I am using WPDF v2 and THTMLViewer component.
Please tell how I can make the page background color to appear on the PDF file?
This is the code i am using:
ZitatAlles anzeigenprocedure TForm2.btn1Click(Sender: TObject);
var
l : Integer;
buf : PAnsiChar;
s:TStringlist;
begin
s:=TStringlist.create;
s.LoadFromFile('C:\template.htm');
convertHTMLToPDF(s,'c:\template.pdf', '');
end;procedure TForm2.convertHTMLToPDF(var sHTML: TStringList; sPDFFileName, sPDFPassword: string);
var
hvw: thtmlviewer;
page: integer;
WPPDFPrinter1: TWPPDFPrinter;
MFPrinter: tmetafileprinter;
begin
hvw := thtmlviewer.Create(self);
hvw.Parent := self;
// hvw.Visible := false;hvw.LoadStrings(sHTML);
hvw.PrintMarginLeft := 1;
hvw.PrintMarginRight := 1;
hvw.PrintMarginTop := 1;
hvw.PrintMarginBottom := 1;WPPDFPRinter1 := TWPPDFPrinter.Create(self);
WPPDFPrinter1.Filename := sPDFFileName;
WPPDFPrinter1.AutoLaunch := true;WPPDFPrinter1.Encryption := [wpEncryptFile];
WPPDFPrinter1.userPassword := sPDFPassword;MFPrinter := TMetafilePrinter.Create(Self);
try
hvw.PrintPreview(MFPrinter);
WPPDFPrinter1.BeginDoc;
try
for page := 0 to MFPrinter.LastAvailablePage - 1 do
WPPDFPrinter1.DrawMetafileEx(0, 0, 0, 0,
MFPrinter.MetaFiles[Page].Handle,
MFPrinter.PixelsPerInchX,
MFPrinter.PixelsPerInchY);
finally
WPPDFPrinter1.EndDoc;
WPPDFPrinter1.Free;
end;
finally
MFPrinter.Free;
hvw.Free;
end;
end;