Я печатаю PDF, используя Open2 в Perl, он принимает шаблон HTML и печатает его в PDF, который можно загрузить с помощью кнопки.Может ли Perl распечатать изображение с помощью CSS в PDF?
Они хотели водяной знак на нем, так что я использовал
<style>
body {
background-image: url("watermark.jpg");
background-repeat: no-repeat;
}
</style>
на странице просмотра она выглядит великолепно, но когда вы загрузите ее в формате PDF исчезает. В любом случае я могу добавить это в свой PDF-файл?
PDF Генератор кода Ниже
sub pdfGenerator {
my $data = shift;
my $file = "$OUTFILES/$data.html";
open(my $fileFH, '<', $file) or return "Can not find file\n";
my $processId = open2(\*POUT, \*PIN, qq(html2ps -U -f /home/dir/cgi-bin/dir2/html2psrc-label));
my @lines = <$fileFH>;
print PIN @lines;
close PIN;
my @psLines;
while (<POUT>)
{
chomp;
push(@psLines,$_);
}
waitpid $processId, 0;
$processId = open2(\*POUT, \*PIN, qq(ps2pdf -sPAPERSIZE=letter - -));
print PIN "$_\n" foreach(@psLines);
close PIN;
my @pdfLines;
while (<POUT>) {
chomp;
push(@pdfLines, $_);
}
waitpid $processId, 0;
print "Content-Type: application/pdf\n";
print "Content-Disposition: attachment; filename=pdfName.pdf\n\n";
print "$_\n" foreach(@pdfLines);
}
Я попытался изменения файла html2ps и я до сих пор ничего не получаю. мой код ниже
@html2ps
{
paper
{
type: letter;
}
}
BODY
{
font-family: Helvetica;
margin: 2em 1em 2em 70px;
font-family: Helvetica, sans-serif;
color: black;
background-image: url("/dir/images/watermark.jpg");
background-repeat: no-repeat;
}
@page
{
margin-left: .75in;
margin-right: .75in;
margin-top: 1in;
margin-bottom: 1in;
}
Если вы создаете PDF из командной строки, используя 'html2ps', отображается ли водяной знак? Является ли путь к водяному знаку доступным и известным «html2ps»? – choroba
Это не вопрос Perl. –