Taşınabilir yazdırma planları
Mantıksal sayfalandırmayı yerel çıktıdan ayırın: lxPortablePrint, koparılmış bir işleme anlık görüntüsünden değişmez bir yazdırma planı oluşturur ve lxPortableCairo sayfalarını Linux ve macOS'ta PDF, SVG ya da PNG olarak çizer
Planlayıcı fiziksel punto ve eksiksiz hücre sınırlarını kullanır, birleştirilmiş aralıkları korur, satır ve sütun başlıklarını yineler ve ayrık yazdırma alanlarını, elle eklenen sonları, yönlendirmeyi, kenar boşluklarını, ortalamayı, ölçeklemeyi ve sayfa sırasını kaynak çalışma kitabını değiştirmeden uygular
Çalışma kitabı sayfa yapısını kullanma
lxPortableWorkbookPrint içindeki CreateXLSPortableWorkbookPrintPlan; ödünç bir TXLSWorkbook ve TXLSXWorkbook için aşırı yüklemelere sahiptir; ikisi de SheetIndex, OriginRow, OriginColumn, Snapshot ve Defaults kabul eder
Sayfa indeksi ve anlık görüntü kökeni 1 tabanlıdır; bağdaştırıcı, güncel çalışma kitabı üretiminden bir anlık görüntü ve her eksiksiz yazdırma alanını ile yinelenen başlık aralığını içeren yakalanmış bir dikdörtgen ister
Anlık görüntü kimliği üretimini içerir; eşleşen sayfayı ve kökeni çağıran sağlar. Anlık görüntü biçimi bir çalışma kitabı ya da çalışma sayfası kimliği kodlamadığı için anlık görüntüyü taşırken doğru sayfa bağlamını tutun
Snapshot := CaptureXLSPortableRenderSnapshot(Owner, 1, 1, 1, 30, 6,
XLSDefaultPortableRenderLimits, Geometry);
Plan := CreateXLSPortableWorkbookPrintPlan(Workbook, 1, 1, 1,
Snapshot, XLSDefaultPortablePrintOptions);
Layout := PrepareXLSPortableCairoLayout(Plan, Fonts,
XLSDefaultPortableCairoOptions);
try
Files := Layout.Save('/srv/output/report.pdf', xpcfPDF);
Files := Layout.Save('/srv/output/report.svg', xpcfSVG);
Files := Layout.Save('/srv/output/report.png', xpcfPNG);
finally
Layout.Free;
end;
Linux ya da macOS'ta yakalama yaparken doğrudan yerel çalışma kitabı yakalama sayfasında anlatılan açık yazı tipi destekli geometri sağlayıcısını kullanın; sayfalandırmanın kendisi Cairo'dan, yazı tipi dosyalarından, Excel'den ya da yazıcı sürücüsünden bağımsızdır
Çalışma kitabı bağdaştırıcısı geçici bir okuma kirası alır, mevcut üst veriyi okur ve koparılmış veri döndürür; ham bir çalışma kitabını sahiplenici bir arayüz üzerinden benimsemez ya da sonuçta bir çalışma kitabı kirası tutmaz
Tırnaklı sayfa adları, kaçışlı tırnaklar ve virgülle ayrılmış yazdırma alanları yalnızca seçilen çalışma sayfası için kabul edilir; yakalanan dikdörtgenin dışındaki atıflar, yabancı sayfa atıfları, eksik başlık aralıkları ve bozuk aralıklar açıkça reddedilir
Tanınan kağıt boyutları Letter, Tabloid, Ledger, Legal, A3, A4, A5, B4 ve B5'tir; belirtilmemiş kağıt boyutu Defaults.PageWidthPoints ile Defaults.PageHeightPoints kullanır, tanınmayan açık bir kağıt boyutu ise reddedilir
Üst ve alt bilgi içeriği, yazdırılan satır/sütun başlıkları, etkin yazdırma kılavuz çizgileri, siyah-beyaz ya da taslak görünüm, yorum yazdırma ve hata ikameleri şu anda reddedilir; çünkü bu bağdaştırıcı o ayarları sadakatle çizemez. Classic çalışma kitapları yazdırma kılavuz çizgilerini varsayılan olarak etkinleştirir, bu yüzden bu desteklenen sözleşme için PageSetup.PrintGridlines değerini kapatın
Ölçekleme modu ve yerel varsayılanlar
TXLSXWorksheet.PageFitToPages sığdırma modunu boyutlarından bağımsız seçer: FitToWidth ya da FitToHeight atamak sığdırma modunu seçer, PageScale atamak ise yüzde ölçeklemeyi seçer
XLSX içe aktarması sheetPr/pageSetUpPr/@fitToPage değerini ve atlanmış bir sığdırma boyutu için OOXML varsayılanı olan bir değeri korur; dışa aktarma açık sıfır boyutları korur ve XLS/XLSX dönüşümü seçilen modu yaşatır
Yüzde ölçeklemesi eskimiş sığdırma boyutlarını yok sayar; sığdırma modu saklanan yüzde ölçeğini yok sayar ve pozitif sığdırma boyutları elle eklenen sonları yok sayar; her iki eksende de sıfır, elle eklenen sonları %100 ölçekte korur; pozitif sınırlar, küçük bir aralığı büyütmeden aşırı büyük içeriği küçültür
Mantıksal sayfalandırma verilen anlık görüntü geometrisine bağlıdır; yazıcı sürücüsü ölçümleri ve Excel PDF dışa aktarma ölçeklemesi fiziksel çıktıyı değiştirebilir ve tam görsel eşdeğerlik güvencesi değildir
Koparılmış planı doğrudan oluşturma
CreateXLSPortablePrintPlan(Snapshot, Areas, Options), sıfır tabanlı kapsayıcı TXLSPortablePrintRanges kabul eder; boş bir Areas dizisi anlık görüntünün tamamını seçer ve her TXLSPortablePrintRange FirstRow, FirstColumn, LastRow ve LastColumn içerir
XLSDefaultPortablePrintOptions ile başlayın, sonra aşağıdaki TXLSPortablePrintOptions alanlarını ayarlayın
| Alanlar | Sözleşme |
|---|---|
PageWidthPoints, PageHeightPoints | Punto cinsinden pozitif fiziksel kağıt boyutları, varsayılan A4 |
MarginLeftPoints, MarginTopPoints, MarginRightPoints, MarginBottomPoints | Pozitif bir yazdırılabilir dikdörtgen bırakan negatif olmayan kenar boşlukları, varsayılan 36 punto |
Landscape, CenterHorizontally, CenterVertically | Yatay yönelim, dikey boyutları takas eder; ortalama her sayfa gövdesine ve yinelenen başlıklarına uygulanır |
ScalePercent | 10 ile 400 arası, varsayılan 100; hiçbir sığdırma boyutu pozitif değilken uygulanır |
FitToPagesWide, FitToPagesTall | Negatif olmayan sayfa sınırları, kısıtsız eksen için sıfır; pozitif sınırlar %10 ile %100 arasından uygulanabilir bir ölçek bulur |
TitleFirstRow, TitleLastRow, TitleFirstColumn, TitleLastColumn | Eksiksiz sıfır tabanlı kapsayıcı başlık aralıkları ya da o ekseni kapatmak için her iki uçta -1 |
RowBreaks, ColumnBreaks | Yeni bir sayfanın başladığı, kesin artan benzersiz sıfır tabanlı konumlardan oluşan TXLSPortablePrintBreaks dizileri; çalışma kitabı uyarlaması sayfayı düzenlemeden koparılmış üst veriyi sıralar |
Order | TXLSPortablePrintOrder: xppoDownThenOver ya da xppoOverThenDown |
MaxPages | Pozitif toplam sayfa sınırı, varsayılan 256 ve en çok 100.000 |
MaxPlanBytes | Çalışma deposu, koparılmış anlık görüntü yükü ve sayfa kayıtları bu pozitif bellek bütçesini paylaşır; varsayılan 64 MiB ve en çok 1 GiB |
MaxPlanningSteps | Pozitif sınırlı planlama iş bütçesi, varsayılan 64 Mi adım ve en çok 2 Gi adım; aşımı EXLSPortablePrintBudget fırlatır |
Geometri sonlu olmalıdır; gizli boyutların boyu sıfırdır, bir sayfa sonu bir birleştirmeyi bölemaz, bir alan ya da başlık bir birleştirmeyle kısmen kesişemez ve aşırı büyük bir hücre ya da birleştirme sessizce kesilmek yerine reddedilir
Sonucu inceleme ya da işleme
IXLSPortablePrintPlan.Snapshot koparılmış değişmez bir işleme anlık görüntüsünün sahibidir, PageCount mantıksal sayfa sayısını bildirir ve sıfır tabanlı Pages[Index], koparılmış bir döşeme dizisi taşıyan TXLSPortablePrintPage döndürür
Her sayfa AreaIndex, AcrossIndex, DownIndex, sıfır tabanlı kapsayıcı Body, Scale, PageWidthPoints, PageHeightPoints ve Tiles alanlarını açığa çıkarır
TXLSPortablePrintTiles; yinelenen köşe, başlık satırları, başlık sütunları ve gövde için en çok dört TXLSPortablePrintTile kaydı içerir; her döşeme ölçeklenmemiş kaynak SourceLeft, SourceTop, SourceRight, SourceBottom ve fiziksel hedef DestinationLeft, DestinationTop alanlarını açığa çıkarır
PrepareXLSPortableCairoLayout(Plan, Fonts, Options) aşırı yüklemesi koparılmış sayfa kayıtlarını tutar, her döşeme için sahne içeriğini kırpar ve ölçekler ve planın kağıt boyutlarını ile kenar boşluklarını kullanır; raster, yazı tipi, şekillendirme ve çizim bütçeleri yinelenen içeriğe de uygulanır
Layout.PageCount planla eşleşir; PDF çok sayfalı tek bir dosya üretir, SVG ve PNG ise mantıksal sayfa başına bir dosya üretir; düzenin metin satırı incelemesi, sayfa başına yinelenen konumlar yerine ölçeklenmemiş anlık görüntü koordinatlarını korur
Mevcut çıktı dosyaları reddedilir ve Windows'ta yerel Cairo giriş noktası açıkça desteklenmez; bağımlılık, yazı tipi eşlemesi, sahne ve çıktı sınırları için taşınabilir headless çıktı sayfasına bakın