type TSPdfImageRange = class(TSPdfBasicRange) public function Create(); function Do();override; public Image: PdfImage; end; function TSPdfImageRange.Create(); begin class(TSPdfBasicRange).Create(); self.Image := nil; end; function TSPdfImageRange.Do(); begin // println("image = {}, x = {}, y = {}, w = {}, h = {}", self.image, self.endx, self.endy, self.width, self.DynamicHeight); self.Page.DrawImage(self.Image, self.EndX, self.EndY, self.Width, self.DynamicHeight); if sysparams["_PDF_IMAGE_DEBUG_"] then begin self.Page.SetLineWidth(0.1); self.Page.SetRGBStroke(0.8, 0.8, 0); self.Page.Rectangle(self.EndX, self.EndY, self.Width, self.DynamicHeight); self.Page.Stroke(); end end;