Taşınabilir headless çıktı
Sürüm 2.384.100'den itibaren açık yakalama ve işleme API'leriyle sınırlı bir çıktı hattı olarak kullanılabilir
Windows'ta bir Classic XLS ya da XLSX çalışma kitabından desteklenen bir dikdörtgeni yakalayın, değişmez anlık görüntüsünü aktarın ve Free Pascal ile yerel Cairo kullanarak Linux ya da macOS'ta PDF, SVG ya da PNG işleyin
Yakalama bağdaştırıcısı çalışma kitabı motorunu kullanır; Windows yakalaması varsayılan geometri hizmetini kullanır, yerel Linux ve macOS yakalaması ise uygulamanın seçtiği yazı tipi dosyalarının desteklediği açık bir FreeType/HarfBuzz geometri hizmeti sağlayabilir
Ayrı yerel tüketici, lxPortableRender sahnelerini lxPortableCairo üzerinden Excel ya da masaüstü oturumu olmadan kabul eder; geometri API'si de mevcut taşınabilir çalışma kitabı görünümü ve işleme geometrisi birimlerini kullanır
Tüketici değişmez bir sahne ya da aktarım akışı kabul eder; çalışma kitaplarını yükleme ve hesaplama platform gereksinimleri Free Pascal desteği sayfasında ayrıca anlatılır
Mevcut bir çalışma kitabı dikdörtgenini yakalama
lxPortableWorkbookCapture içindeki CaptureXLSPortableRenderSnapshot, açık ya da varsayılan TXLSPortableRenderLimits ile bir IXLSWorkbook ya da IXLSXWorkbookOwner kabul eder; iki ek aşırı yükleme, yakalama görünümüne özgü bir IXLSRenderGeometry sağlayıcısından önce açık sınırları kabul eder
SheetIndex ile kapsayıcı Row1, Col1, Row2, Col2 1 tabanlıdır; ortaya çıkan anlık görüntü, yakalanan dikdörtgene göreli sıfır tabanlı konumları saklar
program CaptureRectangle;
{$APPTYPE CONSOLE}
uses SysUtils, Classes, lxHandleX, lxPortableRender,
lxPortableWorkbookCapture;
var
Workbook: TXLSXWorkbook;
Owner: IXLSXWorkbookOwner;
Snapshot: IXLSPortableRenderSnapshot;
Stream: TFileStream;
begin
Workbook := TXLSXWorkbook.Create;
Owner := Workbook;
if Workbook.Open('report.xlsx') <> 1 then
raise Exception.Create('Cannot open report.xlsx');
Snapshot := CaptureXLSPortableRenderSnapshot(Owner, 1, 1, 1, 30, 6);
Stream := TFileStream.Create('report.hxrs', fmCreate);
try
SaveXLSPortableRenderSnapshot(Snapshot, Stream,
XLSDefaultPortableRenderLimits);
finally
Stream.Free;
end;
Owner := nil;
end.
Çalışma kitabı nesnesini kullanırken sahip arayüzünü canlı tutun; arayüzün sahibi olduğu bir çalışma kitabını elle serbest bırakmak yerine arayüzü bırakın
Classic XLS için aynı yakalama çağrısıyla lxHandle içinden TXLSWorkbook ve IXLSWorkbook kullanın
Yakalama mevcut formül önbelleklerini okur ve dikdörtgen içinde önbelleği olmayan her formülü reddeder; asla örtükçe yeniden hesaplamaz, dış veri çekmez ya da kaynak çalışma kitabında yeni stil intern etmez
Uygulamanız taze formül sonuçları gerektiriyorsa yakalamadan önce açıkça yeniden hesaplayın; mevcut bir önbellek saklandığı gibi işlenir, yakalama onun tazeliğini onaylamaz
İşlem bir okuma görünümü tutar ve döndürmeden önce çalışma kitabı üretimini denetler; döndürülen anlık görüntü çalışma kitabı sahipliğinden koparılmıştır ve çalışma kitabı bırakıldıktan sonra da kullanılabilir kalır
Görünüm ve yakalama sınırları
Anlık görüntü; biçimlendirilmiş görüntü metnini, punto cinsinden fiziksel boyutları, çözümlenmiş RGB renklerini, desteklenen hücre yazı tiplerini ve hizalamalarını, dolguları, kenarlıkları ve eksiksiz birleştirilmiş dikdörtgenleri içerir; gizli satır ve sütunların boyu sıfırdır
Desteklenen yazı tipi görünümü kalın, italik, tek altı çizgi ve üstü çiziliyi kapsar; desteklenen hücre görünümü düz dolguları, sol/orta/sağ yatay hizalamayı, üst/orta/alt dikey hizalamayı, sarmayı, daraltmayı ve sağdan sola okuma sırasını kapsar
İnce, orta, kalın, kıl, çift, noktalı, kesikli ve orta kesikli çalışma kitabı kenarlıkları taşınabilir kenarlık stillerine ve punto genişliklerine eşlenir; diğer kenarlık stilleri reddedilir
Desteklenen zengin metin; etkili çalışma yazı tiplerini, punto boyutlarını, RGB renklerini, kalını, italiki, tek altı çizgiyi, üstü çiziliyi ve çalışma düzeyi üst simge ya da alt simgeyi taşır; düz hücre dış çizgi/gölge/dikey yazı tipi etkileri, desteklenmeyen alt çizgi stilleri, degrade ya da desenli dolgular, çapraz kenarlıklar, girinti, metin döndürme ve desteklenmeyen hizalamalar reddedilir
Bir yakalama dikdörtgeni her birleştirilmiş hücreyi eksiksiz içermelidir; kırpılmış, çakışan ya da tutarsız birleştirmeler ve birleştirilmiş dış kenar boyunca uyumsuz stiller reddedilir
Sayfa arka planları ve desteklenmeyen sayfa türleri yakalamayı reddeder; her iki çalışma kitabı cephesindeki desteklenen PNG/JPEG görüntüler ve sıradan dikdörtgen/elips metin şekilleri sıralı sahne nesneleri olarak yakalanır; buna aşağıda anlatılan XLSX hücre görüntüleri, Boolean onay kutuları ve desteklenen önbelleğe alınmış XLSX grafik alt kümesi de dahildir; desteklenmeyen grafikler, şekil ön ayarları, WordArt, gruplanmış dönüşümler, kayan denetimler, Slicer'lar, Zaman çizelgeleri ve sparkline'lar, çözümlenen ayak izleri dikdörtgenle kesiştiğinde reddedilir
Ayak izi güvenilir biçimde çözümlenen ve dikdörtgenin dışında kalan desteklenmeyen içerik yakalama ile bir arada bulunabilir; çözümlenemeyen bir çizim ayak izi, çakışabilecek içeriği sessizce atlamak yerine reddedilir
Dikdörtgenle kesişen Classic tablo stillendirmesi reddedilir; XLSX gömülü ve desteklenen özel Table bölümleri, bölüm boyutlu şeritler ve doğrudan hücre biçimi geçersiz kılmalarıyla koparılmış stil bağlamında çözümlenir
Desteklenen alınmış Table düz ya da örtük diferansiyel dolguları için RGB bgColor görünür arka planı sağlar; yalnızca RGB fgColor devralınan arka planı değişmeden bırakır ve her iki rengi taşıyan bir bölüm arka plan rengini kullanır
Türlü özetin gösteremediği görünüm içeren alınmış Table bölümleri, o bölüm uygulandığında reddedilir; alt çizgi, sayı biçimleri, açıkça temizlenmiş kalın/italik, yazı tipi şemaları, açık dolgusuz desen ve desteklenmeyen renk biçimleri dahil; yakalanan dikdörtgenin dışındaki ilgisiz bir bölüm yakalamayı engellemez
Desteklenen koşullu biçimlendirme formül değerlendirmesi olmadan uygulanır: literal sayısal sınırlara, literal Boolean ya da sayısal ifadelere, metin içerme/ön ek/son ek kurallarına, boşlara ve hatalara karşı önbelleğe alınmış sayısal ya da tarih karşılaştırmaları; desteklenen özellik başına yüksek öncelikli görünüm kazanır ve XLSX StopIfTrue daha düşük öncelikli eşleşen kuralları durdurur
Classic metin kuralları literal bir dize iğnesi ister ve önbelleğe alınmış dize hücreleriyle eşleşir; XLSX metin kuralları saklanan metin ölçütlerini kullanır
Desteklenen diferansiyel görünüm; tonlu çözümlenmiş tema renklerini ve düz indeksli renkleri kapsar; alınmış otomatik renkler, tema dışı ton, ön ve arka plan renklerinin ikisini taşıyan diferansiyel dolgu ile desteklenmeyen kenarlık, hizalama, üstü çizili ya da diğer gösterilemeyen diferansiyel görünüm, eşleşen kural uygulandığında reddedilir
Değerlendirme isteyen koşullu formüller, toplama ya da tarihe bağlı kurallar, renk ölçekleri, veri çubukları ve simge kümeleri karşılaşıldıkları yerde reddedilir; çakışan koşullu biçim kuralı sayıları sınırlıdır
Date1904 dönüşümü, takvim ofsetini uygulamadan önce uygun ham sayısal biçim bölümünü seçer; etkin olmayan takvim bölümleri sıradan sayısal gösterimi değiştirmez ve Boolean değerler Boolean olarak kalır
Biçim koşulları ya da geçen süre yapılarıyla birleşen seçili bir Date1904 takvim bölümü reddedilir; tırnaklı ya da kaçışlı bölüm ayırıcıları da reddedilir ve bu sınır, başka bir bölüm takvim biçimi olduğu için seçili sıradan bir sayısal bölümü engellemez
Zengin metin ve sıralı çizim sahneleri
TXLSPortableCell.RichText; Text, FontFamily, FontSizePoints, FontStyles, ColorRGB ve BaselineShiftPoints içeren TXLSPortableTextRun kayıtlarından oluşan bir dizidir; birleştirilmiş çalışma metni hücre görüntü metnine tam olarak eşit olmalıdır
XLSX çalışmaları atlanan özellikleri, desteklenen tablo ve koşullu biçimlendirme dahil, etkili yakalanmış hücre yazı tipinden devralır; açıkça atanan false bayrakları ve açık none/baseline/otomatik renk değerleri devralmayı geçersiz kılar
Yerel paylaşılan dizeler ve satır içi dizeler çalışma sınırlarını ve boşlukları korur; desteklenmeyen yerel yazı tipi alt öğeleri, öznitelikler, ad alanları, tema/indeksli zengin renkler ve fonetik açıklamalar görünür görünümü sessizce kaybetmek yerine reddedilir
Classic çalışmalar saklanan BIFF yazı tipi indekslerini tam etkili çalışma yazı tiplerine çözümler; fonetik üst veri ve desteklenmeyen çalışma yazı tipleri reddedilir ve yakalama çalışma kitabı üretimini ve stil havuzlarını korur
Classic metin şekilleri, çizim sarmalayıcıları oluşturmadan ya da çalışma kitabını değiştirmeden mevcut OfficeArt özelliklerini ve TXO yazı tipi çalışmalarını okur; çonlar gerçek satır/sütun boyutlarını ve ofsetlerini kullanır, desteklenen düz dolgular ve dış çizgiler renklerini ve genişliklerini korur ve gömülü PNG/JPEG baytları aktarımdan önce koparılır
Dikdörtgen metin yerel 7,2 punto yatay ve 3,6 punto dikey kenar boşluklarını kullanır; elips metin ayrıca içine yazılmış metin dikdörtgenini kullanır ve her iki çalışma kitabı cephesinde sıradan metni şekil dış çizgisinin içinde tutar
Alınmış Classic dikdörtgen ve elips kapsayıcıları türlü metinlerini ve biçimlendirmelerini korur; çözümlenen ayak izi olmayan atlanmış yerel şekil ya da grup üst verisi yakalamayı açıkça reddettirir; bilinmeyen nesne kuyruğu kayıtları, çizim uzantıları, döndürme, düz olmayan dolgular ve desteklenmeyen çizgi stilleri kesişen bir nesneyi reddettirir
Alınmış XLSX iki hücreli dikdörtgen ve elips çonları; alfa kanallı açık RGB düz dolgularını, düz ya da kesikli/noktalı dış çizgileri, fiziksel çon ofsetlerini ve tek bir sıradan zengin metin paragrafını destekler; her çalışma, açık kalın ya da italik sıfırlamaları dahil etkili yazı tipini, punto boyutunu, rengini, kalınlığını, italikliğini, tek altı çizgisini ve üstü çiziliyi korur
Alınmış şekil okuyucusu, ayrıştırmadan önce ham XML taslak deposu ayırır ve öğe, bayt ve metin bütçelerini işbirlikçi biçimde denetler; şekil modelleri ya da olmayan hücreler oluşturmadan çalışma kitabı çizim sırasını ve okuma kiralarını korur
Bilinmeyen yerel şekil özellikleri, etkiler, temalar, döndürmeler, gruplanmış dönüşümler, birden çok paragraf ve desteklenmeyen çon türleri açıkça reddedilir; yakalama dikdörtgeninin dışında çözümlenmiş desteklenmeyen bir ayak izi istenen bölgeyi engellemez
Çalışma düzeyi üst simge ve alt simge, çalışma yazı tipi boyutunun üçte ikisini ve özgün punto boyutunun üçte biri kadar bir taban kaymasını kullanır; Unicode şekillendirme kümesini bölen bir stil sınırı ya da uyumsuz çalışma sınırlarını geçen bir CRLF dizisi yerel düzende reddedilir
TXLSPortableSceneObject; bir Kind, punto tabanlı X, Y, Width, Height, kırpma dikdörtgeni, dolgu/dış çizgi renkleri ve opaklığı, isteğe bağlı yol noktaları, metin hücresi ya da kodlanmış raster baytları ve boyutları taşır
TXLSPortableSceneKind; xpskRectangle, xpskEllipse, xpskPolyline, xpskPolygon, xpskText, xpskPNG ve xpskJPEG içerir; dizi sırası çizim sırasıdır, sonraki nesneler öncekileri örter
Ek CreateXLSPortableRenderSnapshot aşırı yüklemesi bir TXLSPortableSceneObjects dizisi kabul eder; sıfır tabanlı Objects ve ObjectCount için IXLSPortableRenderSceneSnapshot sorgulayın; getter'ları çalışma, nokta ve raster dizileri dahil koparılmış kopyalar döndürür
Hücre görüntüleri ve onay kutusu yolları kayan çizimlerden önce gelir; kayan çizimler çalışma kitabı sırasını, fiziksel çonları ve görünüm alanı kırpmasını korur ve metin şekilleri 11 puntoda ikincil tema yazı tipini 7,2 punto yatay ve 3,6 punto dikey metin kenar boşluklarıyla kullanır
PNG ve JPEG görüntüleri başlık, piksel boyutu ve bayt ön denetiminden sonra yerel olarak çözülür; desteklenen kayan görüntüler saydamlığı ve germe geometrisini korur, hücre görüntüleri ise en-boy oranını koruyarak hücrenin ya da eksiksiz birleştirilmiş dikdörtgenin içine sığar
Kırpma, döndürme, gölgeler, parlaklık/gama ayarı, döşeme, SVG eşlikçileri ve canlı kamera bağları desteklenmez; korunan görüntü XML'i desteklenen görünüme karşı doğrulanır; böylece gizli görüntüler, bilinmeyen iç içe üst veri, yabancı ad alanlı özellikler, dikdörtgen olmayan görüntü geometrisi ve modellenmemiş dönüşümler yalnızca ayak izleri yakalama ile çakıştığında reddedilir
Boolean hücre onay kutuları tema-nötr bir vektör kutu ve isteğe bağlı onay işareti kullanır; satır ve sütun biçimlerinden devralınan etkili denetimler dahil; istenen hücre gezinmesi geçişten önce sınırlanır, diğer denetim türleri ile boş ya da Boolean olmayan onay kutusu değerleri reddedilir ve desteklenen hücre sahneleri skaler Boolean ya da görüntü hata yedek metnini bastırır
Bir onay kutusu varsayılanı ekleme üst verisidir ve olmayan bir hücre için Boolean üretmez; açık doğrudan hücre denetimi temizlemesi devralınan bir denetimi maskelerken yakalama okumaları seyrek yokluğu ve çalışma kitabı üretimini korur
XLSReadPortableImageDimensions, sınırlı bir PNG IHDR'yi ya da desteklenen sekiz bitlik sıralı/aşamalı JPEG çerçevesini doğrular ve bildirilen genişlik ile yüksekliğini döndürür; çözme, işleyicinin sorumluluğunda kalır
IXLSPortableSceneCaptureSource.ReadPortableSceneObjects 1 tabanlı çalışma kitabı koordinatlarını ve aralığa göreli punto tabanlı sahne koordinatlarını kullanır, aralığı ve işbirlikçi sınırları doğrular ve tüketilen bayt, metin ve öğe sayılarını döndürür; HasPortableCellScene, skaler gösterimi yakalanan sahnesiyle değiştirilen hücreleri tanımlar
Yerel düzen CellCount ızgara hücrelerini sayar ve LineCount metin sahne nesnelerini de kapsar; bir metin nesnesinin satır CellIndex değeri CellCount artı metin sahne nesneleri arasındaki sıfır tabanlı sırasıdır, GetCellGeometry ise ızgara hücreleriyle sınırlı kalır
Skaler anlık görüntüler HXRSNP01 olarak serileştirilmeye devam eder; çalışma ya da sahne nesnesi içeren anlık görüntüler HXRSNP02 olarak serileştirilir ve yükleyici her iki sürümü de aynı değişmez sahiplik ve girdi konumu geri alma sözleşmesiyle kabul eder
Birleşik öğe bütçesi saklanan hücreleri, zengin çalışmaları, sahne nesnelerini ve yol noktalarını sayar; bayt sınırları, hazırlanan ve koparılmış dizileri, metni, kodlanmış raster yüklerini ve ayırmadan önce sınırlı yerel üst veri incelemesini hesaba katar
Taşınabilir anlık görüntü API'si
| Sembol | Sözleşme |
|---|---|
EXLSPortableRender | Geçersiz anlık görüntü verisi, desteklenmeyen yakalama görünümü, kullanılamayan yerel arka uç, kaynak sınırları ya da işleme başarısızlıkları için fırlatılan istisna |
TXLSPortableFontStyle, TXLSPortableFontStyles | xpfsBold, xpfsItalic, xpfsUnderline ve xpfsStrikeout, küme olarak birleşir |
TXLSPortableHorizontal, TXLSPortableVertical | xphLeft, xphCenter, xphRight ve xpvTop, xpvCenter, xpvBottom |
TXLSPortableBorderStyle, TXLSPortableBorder | xpbsNone, xpbsSolid, xpbsDashed, xpbsDotted ve xpbsDouble; her kenarlık Style, WidthPoints ve ColorRGB taşır |
TXLSPortableCell | Sıfır tabanlı Row/Column, pozitif RowSpan/ColumnSpan, görüntü Text, FontFamily, FontSizePoints, FontStyles, TextColorRGB, FillColorRGB, HasFill, WrapText, ShrinkToFit, RightToLeft, Horizontal, Vertical ve dört LeftBorder/TopBorder/RightBorder/BottomBorder kaydı |
TXLSPortableCells, TXLSPortableSizes | Saklanan hücrelerin ve punto cinsinden fiziksel satır/sütun boyutlarının dinamik dizileri |
TXLSPortableRenderLimits | MaxGridCells, MaxStoredCells, MaxBytes ve MaxTextCharacters; kurulumu, yakalamayı ve serileştirmeyi sınırlar |
XLSDefaultPortableRenderLimits | 2000000 ızgara hücresi, 2000000 saklanan hücre, 67108864 bayt ve 16777216 UTF-16 metin karakteri döndürür |
XLSDefaultPortableCell | 11 puntoda Calibri ile tek hücrelik bir kapsamı ve varsayılan sıfır değerli görünümü hazırlar; kurulumdan önce konumunu ve istenen görünümünü atayın |
CreateXLSPortableRenderSnapshot | Üretimi, satır yüksekliklerini, sütun genişliklerini ve saklanan hücreleri doğrular ve koparılmış değişmez bir arayüze kopyalar; hücreler benzersiz, satır-öncelikli sırada, sınırlar içinde ve çakışmayan kapsamlı olmalıdır |
IXLSPortableRenderSnapshot | Salt okunur Generation, RowCount, ColumnCount, CellCount, sıfır tabanlı RowHeightPoints, ColumnWidthPoints ve kopyalanmış Cells kayıtları |
| Anlık görüntü getter yöntemleri | GetGeneration, GetRowCount, GetColumnCount, GetCellCount, GetRowHeight, GetColumnWidth ve GetCell aynı değerleri açığa çıkarır; geçersiz indeksli erişim istisna fırlatır |
SaveXLSPortableRenderSnapshot | Bir anlık görüntüyü doğrular ve sınırlı özel bir tampona serileştirir, sonra eksiksiz HXRSNP01 ya da HXRSNP02 yükünü verilen akışa güncel konumundan kopyalar |
LoadXLSPortableRenderSnapshot | Sürümlü küçük endian anlık görüntüyü sıkı UTF-8 metinle okur, sayıları, geometriyi, stilleri ve kapsamları doğrular ve sondaki veriyi reddeder; başarısızlık girdi akışının konumunu geri yükler |
Tüm sınırlar pozitif olmalıdır; doğrulanmış en yüksek değerler 2000000 ızgara/saklanan hücre, 1073741824 bayt ve 268435456 metin karakteridir; boyutlar en fazla 1048576 satıra 16384 sütuna kadar olabilir
MaxGridCells, saklanmamış boş hücreler dahil dikdörtgenin tamamını sayar; CellCount saklanan görünür hücreleri ve birleştirilmiş çonları sayar ve daha küçük olabilir
Generation, kaynak üretimini ya da uygulamanın sağladığı bir değeri kaydeder; bu bir çalışma kitabına canlı bağ değil, üst veridir ve otomatik bir tazelik denetimi değildir
Yerel işleme ve açık yazı tipleri
XLSPortableCairoBackendAvailable derlenmiş yerel arka ucun kullanılabilirliğini bildirir; yerel çıktı, Linux ya da macOS'ta Free Pascal ve süreç için erişilebilir Cairo, FreeType, HarfBuzz ve FriBidi kitaplıkları ister
macOS derlemeleri dört yerel kitaplığı açıkça bağlar; özel bir bağımlılık öneki ve açık bir alt süreç yükleyici yolu, paylaşılan derleyici ayarlarını ya da kabuk profillerini değiştirmeden bunları sağlayabilir
Windows'ta Delphi XE5, Win32 ve Win64 taşınabilir arayüzleri derleyebilir ve anlık görüntü serileştirmesini kullanabilir, ancak yerel Cairo düzen hazırlığı orada arka uç kullanılamaz bildirir
PrepareXLSPortableCairoLayout'a açık bir yazı tipi zinciri geçirin; işleyici önce eşleşen aileyi ve kalın/italik stili dener, sonra verilen sıradaki aynı stilli yedekleri dener ve her desteklenen metin kümesi için glif kapsamı ister
Yakalanan içeriğinizin gerektirdiği gerçek normal, kalın, italik ve kalın-italik dosyaları sağlayın; sistem yazı tipi keşfi ya da yapay kalın/italik ikamesi yapılmaz; eksik dosyalar, stil eşlemeleri ya da glif kapsamı reddedilir
Yazı tipi baytları şekillendirmeden önce yakalanır; böylece bir dosyayı değiştirmek sonraki düzenleri etkilerken mevcut bir düzen yakalanan baytlarını korur; FaceIndex bir yazı tipi dosyasındaki ya da koleksiyonundaki negatif olmayan yüzü seçer
Yerel işlemler FreeType yüz güvenliği için serileştirilir; değişmez anlık görüntüler ve hazırlanmış düzen incelemesi canlı bir çalışma kitabı gerektirmez
Fonts[0].FamilyName := 'Calibri'; Fonts[0].FileName := '/srv/fonts/Regular.ttf'; Fonts[0].FaceIndex := 0; Fonts[0].Bold := False; Fonts[0].Italic := False;
Buradaki Calibri, seçilen dosya için uygulamanın denetlediği bir yazı tipi eşlemesine izin veren açık bir aile takma adıdır; farklı bir yazı tipine eşlerken çıktı ölçümlerini inceleyin
İşleyici; sabit satır sonlarını, dört boşluklu sekme genişletmesini, paragraf çift yönlü sıralamasını, şekillendirilmiş ligatürleri ve birleşen işaretleri, aç gözlü sarmayı ve sığdırmak için daraltmayı destekler; sarma daraltmaya göre önceliklidir
Sarma; uygulanan birleşen işareti, varyant seçici, ZWJ ve virama kümesi sınırlarını korur ve boşlukları ile ideografik boşlukları tercih eder; eksiksiz bir UAX #29 grafem uygulaması ya da Unicode satır kırma algoritması değildir ve bölgesel gösterge ile Hangul-Jamo sarma sınırları garanti edilmez
Yazı tipi boyutları 1/64 puntoya çözümlenir ve metin hücre sınırlarına kırpılır; PDF açık yazı tiplerini mantıksal metin eşlemeleriyle gömer, SVG vektör glif yollarını kullanır ve PNG aynı konumlandırılmış glifleri istenen DPI'da çizer
Düzen hazırlama ve inceleme
| Sembol | Sözleşme |
|---|---|
TXLSPortableFontFile, TXLSPortableFontFiles | Tek bir açık eşleme FamilyName, FileName, FaceIndex, Bold ve Italic içerir; dinamik dizi sıralıdır ve 1 ile 64 arasında eşleme içerir |
TXLSPortableCairoFormat, TXLSPortableOutputFiles | xpcfPDF, xpcfSVG ya da xpcfPNG ve dosya kaydının döndürdüğü çıktı dosya adları dizisi |
TXLSPortableCairoOptions | Sayfa genişliği/yüksekliği, dört kenar boşluğu, hücre dolgusu ve raster DPI; ayrıca sayfa, glif, satır, düzen, çıktı, yazı tipi, şekillendirme ve çizim sınırları |
XLSDefaultPortableCairoOptions | Her seçeneği sınırlı varsayılanlarla hazırlar; tek tek alanları geçersiz kılmadan önce onu kullanın |
PrepareXLSPortableCairoLayout | Bir anlık görüntüyü doğrular ve kopyalar, açık yazı tipi baytlarını yakalar ve sahiplenilmiş hazırlanmış bir TXLSPortableCairoLayout döndürür; Free ile serbest bırakın |
TXLSPortableCairoLayout | PageCount, LineCount, CellCount, GetTextLine, GetCellGeometry, SaveToStream, Save ve Destroy açığa çıkarır |
TXLSPortableTextLineInfo | Kopyalanmış bir satır kaydı CellIndex, GlyphCount, XPoints, BaselinePoints, WidthPoints, FontSizePoints ve mantıksal Text içerir |
TXLSPortableCellGeometry | Kopyalanmış bir dikdörtgen, tam düzende XPoints, YPoints, WidthPoints ve HeightPoints içerir |
GetTextLine(Index), GetCellGeometry(Index) | Hazırlanan satırların ve saklanan hücrelerin sıfır tabanlı indeksli incelemesi; geçersiz indeksler reddedilir |
Sayfalandırma, sabit yazdırılabilir alan döşemelerini önce-yatay-sonra-dikey sırayla kırpar; sayfa sınırlarını geçen bir hücre ya da metin parçası kesiştiği her sayfada görünür; otomatik tüm hücre sığdırma, çalışma sayfası yazdırma başlığı yinelemesi ya da çalışma kitabı sayfa yapısı yorumu olmadan
İşleyici seçenekleri ve sınırları
| Alanlar | Varsayılanlar ve anlam |
|---|---|
PageWidthPoints, PageHeightPoints | 595 x 842 punto |
MarginLeftPoints, MarginTopPoints, MarginRightPoints, MarginBottomPoints | Her biri 36 punto; kenar boşlukları pozitif bir yazdırılabilir dikdörtgen bırakmalıdır |
CellPaddingPoints, RasterDPI | 2 punto ve 96 DPI; DPI PNG boyutlarını etkiler |
MaxPages, MaxGlyphs, MaxLines | 256 sayfa, 2000000 şekillendirilmiş glif ve 200000 metin satırı |
MaxLayoutBytes | Sınırlı düzen işleri ve raster yüzey denetimleri için 268435456 bayt |
MaxOutputBytes | İşlenen her çıktı tamponu için 268435456 bayt; ayrı sayfa dosyalarının toplamını değil eksiksiz PDF'i ya da bir SVG/PNG sayfasını kapsar |
MaxFontBytes | Bir düzen için açık yazı tipi girdi dosyaları boyunca 134217728 bayt |
MaxShapedCharacters, MaxDrawOperations | Her biri 16000000; şekillendirme işini ve hücre başına sayfa çizim işini sınırlar |
Geçersiz ya da sonlu olmayan geometri ve pozitif olmayan iş bütçeleri reddedilir; sayfa boyutları 100000 puntoya, raster DPI ise 1200'e sınırlıdır; işlemeden önce ek bayt, sayı ve raster alan denetimleri yapılır
Yerel süreç genelinde yazı tipi baytı havuzu ayrıca en çok 256 farklı tampona ve 256 MiB'ye izin verir; tam olarak özdeş baytlar depolamayı paylaşabilir ve kapasite yalnızca gerçek Cairo'nun sahibi olduğu yazı tipi yüzü tamponunu serbest bıraktığında açığa çıkar
İşiniz bitince her düzeni serbest bırakın; kitaplık paylaşılan Cairo önbelleklerini sıfırlamaz ve mantıksal olarak tamamlanmış bir düzen, yerel Cairo bir yüzün sahibiyken yazı tipi baytlarını yerleşik bırakabilir
Çıktı yazma ve başarısızlıkları işleme
SaveToStream(Stream, Format, PageIndex = 0) PDF için tüm sayfaları yazar ve PageIndex = 0 ister; SVG ve PNG seçilen sıfır tabanlı sayfayı yazar
Anlık görüntü serileştirmesi ve yerel işleme, hedef akışa kopyalamadan önce özel sınırlı tamponlarda tamamlanır; doğrulama ya da işleme başarısızlıkları onu korur, ancak çağıranın akış yazma başarısızlığı kısmi baytlar bırakabilir ve o akışın kendi başarısızlık davranışını izler
Save(FileName, Format) bir PDF dosyası ya da sayfa başına bir SVG/PNG dosyası yazar ve yollarını döndürür; çok sayfalı dosya adları uzantıdan önce -0001, -0002 ve sonraki sonekleri ekler
Mevcut dosya ya da dizin hedefleri reddedilir; her kaydetme tüm sayfaları hazırlar, münhasır yeni hedefler yayımlar ve başarısızlıkta kendi hazırlanmış/yayımlanmış çıktılarını kaldırır
Dosya sistemi yerel münhasır hazırlama ve bağ yayımlama işlemlerini desteklemelidir; ayrı PDF, SVG ve PNG kaydetmeleri ayrı işlemlerdir ve birleşik bir işlem oluşturmaz
Bağımsız Linux tüketicisi
Tests/Portable/RenderPortableSnapshot.pas; bir anlık görüntü yükleyen, bir düzen hazırlayan ve üç biçimi de kaydeden eksiksiz bir tüketicidir; taşınabilir birimler ve yerel kitaplıklar kurulu şekilde Linux'ta derleyin
fpc -Mdelphiunicode -Fu/path/to/HotXLS/Lib RenderPortableSnapshot.pas ./RenderPortableSnapshot report.hxrs /srv/output/report fonts.tsv 595 842 96
fonts.tsv; eşleme başına dört sekmeyle ayrılmış alanı olan UTF-8 metindir: aile takma adı, mutlak Linux yazı tipi yolu, yüz indeksi ve regular, bold, italic ya da bolditalic değerlerinden biri
Calibri /srv/fonts/Regular.ttf 0 regular Calibri /srv/fonts/Bold.ttf 0 bold Calibri /srv/fonts/Italic.ttf 0 italic Calibri /srv/fonts/BoldItalic.ttf 0 bolditalic
Gerçekten kurulu ya da uygulamanın sağladığı yazı tipi dosyalarını kullanın ve mevcut hedef dosyalar reddedildiği için yeni bir çıktı tabanı seçin; ilk eşlemenin kapsamadığı yazı sistemleri için ek aynı stilli yedekler ekleyin
Stream := TFileStream.Create('report.hxrs', fmOpenRead or fmShareDenyWrite);
try
Snapshot := LoadXLSPortableRenderSnapshot(Stream,
XLSDefaultPortableRenderLimits);
finally
Stream.Free;
end;
Options := XLSDefaultPortableCairoOptions;
Layout := PrepareXLSPortableCairoLayout(Snapshot, Fonts, Options);
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;
Önbelleğe alınmış grafik kaydı
lxPagination içindeki XLSRecordCachedChartScene, mevcut grafik düzen işleyicisinin punto tabanlı ilkel öğelerini değişmez bir taşınabilir sahne gösterimine kaydeder; kaynağı, sahibi olan çalışma sayfası olmayan ve korunan yerel XML'i olmayan koparılmış bir TXLSXChart olmalıdır; böylece kayıt çalışma sayfası atıflarını çözümleyemez ya da çalışma kitabı önbelleklerini yenileyemez
Güncel alt küme; sütun, çubuk, çizgi, dağılım, pasta, halka ve birincil tek çizim gruplu sıradan tek serili alan grafiklerini destekler; sonlu sayısal değer önbellekleri ve kesin artan sınırlı önbellek indeksleriyle; dağılım kategori önbellekleri sayısal X koordinatlarını içerir, diğer aileler saklanan kategori etiketlerini kullanır
Sütun, çubuk, çizgi ve alan değer önbellekleri kesintisiz sıfır tabanlı indekslere sahip olmalıdır; seyrek kategori değeri boşlukları reddedilir ve kayıt eksik indeksleri asla büyük bir diziye genişletmez
Çubuk çizimleri yatay geometriyi ve kategorik etiketleri korur; pasta ve halka çizimleri kategori göstergelerini kullanır, FirstSliceAng ve HoleSize değerlerine uyar ve sayısal eksenleri atlar; sıradan tek serili alan çizimleri sıfır taban çizgisi çevresinde dolgulu bir çokgen korur
Çizgi ve dağılım serileri LineVisible, LineColorRGB ve LineWidthPoints üzerinden bağımsız çizgi görünürlüğünü, açık RGB rengini ve nokta genişliğini destekler; LineStyleSet, LineColorSet ve LineWidthSet açık ayarları devralınan varsayılanlardan ayırır, EffectiveLineVisible ise mevcut yalnızca dolgu serisi kuralını çözümler
İşaretçiler otomatik daireyi, açık bir daireyi ya da işaretçisizliği destekler; 2 ile 72 arasındaki açık bir MarkerSize punto çapını atar; MarkerFillSet ve MarkerBorderSet, açık siyah RGB sıfır değerini otomatik renk seçiminden ayırır; bağlayıcı parçalar opak veri işaretçilerinden önce boyanır
Saklanan genişliği olmayan açık işaretçi kenarlıkları sıradan 0,75 punto çizgiyi kullanır; gösterge örnekleri daire çapını 6 puntoda sınırlar; istenen başlık yazı tipleri, Excel grafiği dışa aktardığında görünür boyutlarını, renklerini ve vurgularını koruyacak biçimde gerçek zengin metin çalışmasına da varsayılan metin özelliklerine de yazılır
Desteklenmeyen grafik aileleri, yığılmış ya da çok serili alan çizimleri, çok serili dairesel çizimler, galeri stilleri, yuvarlatılmış köşeler, ikincil ya da birleşik çizim grupları, tarih eksenleri, özel sayı biçimleri, logaritmik eksenler, özel kesişim davranışı, döndürülmüş metin, trend çizgileri, hata çubukları, hiyerarşik kategoriler, veri etiketleri, diğer işaretçi şekilleri ve eksik değer önbellekleri işlemeden önce EXLSPortableRender fırlatır
Özel değer ekseni işaret yazı tipleri, ikincil ızgaralar, açık büyük/küçük birimler, geçersiz açık seri renkleri ve desteklenmeyen eksen konumları reddedilir; çubuk göstergeleri şu anda sıradan sağ taraflı yerleşimi ister ve dairesel çizimler, sonlu sıfır olmayan önbelleğe alınmış bir toplam ile yay taslak deposu için erken ihtiyatlı ayırmalı sınırlı geometri ister
Döndürülen dizi ilkel çizim sırasını, açık renkleri, yazı tiplerini, metin hizalamasını, opaklığı ve grafik kırpma sınırlarını korur; öğe, bayt ve metin muhasebesi ihtiyatlı işleyici taslak ayırmalarını kapsar ve işbirlikçi önbellek denetimleri taslak dizi ayırmasından önce gelir
XLSValidateCachedChartSceneModel, çalışma sayfası hücrelerini çözümlemeden bir model üzerinde aynı sınırlı önbellek ve görünüm ön denetimini yapar; XLSX yakalama köprüsü, klonlamadan önce bu denetimi yapar ve desteklenen girilmiş grafik modellerini yerel tek boyutlu A1 atıflarıyla, fiziksel yerel çon ofsetleriyle, aralık kırpmasıyla ve çizim sırasıyla kaydeder
Platform nötr kaydedici lxPortableChart içinde yaşar; mevcut lxPagination giriş noktaları aynı düzen ve ilkel kayıt gövdelerini paylaşır, Windows işleyicisinin davranışını korur ve her desteklenen aile için değişmez sahne baytlarını ve bütçe muhasebesini eşleştirir
Yerel Linux ve macOS çalışma kitabı yakalaması aşağıda anlatılan açık geometri aşırı yüklemesini kullanır; alınmış seri RGB dolgusu, çizim alanı arka planı, grafik arka planı ve grafik kenarlığı kendi ad alanı çözümlü şekil özelliklerinden kurtarılır; böylece iç içe bir seri rengi çizim arka planının üzerine yazamaz
Alınmış korunan ChartML, yalnızca ad alanı genişletilmiş öğe, öznitelik ve anlamlı metin akışı desteklenen türlü yeniden kurulumla eşleştiğinde kabul edilir; ad alanı takma adları ve öznitelik sırası normalleştirilir; modellenmemiş yerel uzantılar, yabancı öznitelikler ve desteklenmeyen görünüm ihtiyatlıca reddedilir
Ham XML ve yeniden kurulum taslak bütçeleri klonlama ve yansıtma işlerinden önce denetlenir; yalnızca koparılmış kopya doğrulanmış korunan XML'ini temizler; kaynak yerel üst veriyi, hücre depolamasını, önbellek içeriklerini ve üretimi korur
Yakalama, genel Shapes sarmalayıcısında bulunmayan grafik çerçeveleri dahil altta yatan OfficeArt çizim sırasını gezdirir ve kesişen desteklenmeyen bir çerçeveyi sessizce atlamak yerine reddeder
Bildirilmiş görünümlü Classic önbelleğe alınmış grafikler
Classic BIFF8 yakalama; çekirdek kayıtları, yerel saklanan değerleri, açık doğrusal ölçekleri ve görünümü gösterilebildiğinde yukarıdaki yedi sıradan grafik ailesini destekler; saklanan kayıtları ve kullanılabilir formül önbelleklerini formül değerlendirmeden, seyrek depolamayı genişletmeden ya da derlenmiş formül ağaçlarını klonlamadan okur
TXLSWorkbook.CreateReadOnlyViewWithChartAppearance(Source, Limits, Geometry) kullanarak IXLSClassicChartAppearanceSource tarafından sağlanan donmuş bir TXLSClassicChartAppearanceDeclaration değerleri kümesiyle ayrı bir salt okunur görünüm oluşturun; Geometry Windows'ta isteğe bağlıdır ve Linux ya da macOS'ta açık yerel yazı tipi ölçümleri sağlar
TXLSClassicChartAppearanceDeclarations, bir uygulamanın o kaynağı uygulamak için kullanabileceği ilkel bildirimlerin dinamik dizisidir
O yapılandırılmış görünümü CaptureXLSPortableViewRenderSnapshot(View, SheetIndex, Row1, Col1, Row2, Col2, Limits)'a geçirin; koordinatlar 1 tabanlıdır ve bağdaştırıcı, yakalama bittiğinde ya da reddedildiğinde çağıranın etkin çalışma sayfasını geri yükler
Sıradan yakalama giriş noktaları çözümlenemeyen etkili Classic düzen ya da gösterge yazı tiplerini reddetmeye devam eder; ayrı görünüm giriş noktası zaten donmuş bildirimleri ve geometri sağlayıcısını kullanır
| Bildirim üyesi | Sözleşme |
|---|---|
Generation, SheetIndex, ObjectId | Sabitlenmiş çalışma kitabı üretimi, 1 tabanlı çalışma sayfası indeksi ve gerçek saklanan grafik nesnesi kimliği; eskimiş üretimler, eksik ya da yinelenen kimlikler ve başka bir nesneye ait kimlikler reddedilir |
HasChartSize, ChartWidthPoints, ChartHeightPoints | Punto cinsinden açık sonlu pozitif grafik çerçevesi boyutu; saklanan çon kökenini ve çizim sırasını korur, yanlış bayrak çapa kaynaklı boyutları korur |
HasPlotInnerRectangle, PlotInnerRectangle | Etiketleri ve eksen başlıklarını hariç tutan açık bir iç çizim dikdörtgeni; bu bildirilmiş görünüm yolu için gereklidir |
HasTitleRectangle, TitleRectangle | Grafiğin başlığı varken açık bir başlık dikdörtgeni; kaynak metin, yazı tipi ailesi, vurgu ve renk yine doğrulanmış çekirdek kayıtlardan gelir |
HasLegendRectangle, LegendRectangle | Gösterge varken bildirilen gösterge sınırları |
HasLegendFontSize, LegendFontSizePoints | Mevcut bir gösterge için çağıranın açık etkili punto boyutu; çekirdek yazı tipi ailesi, vurgu ve renk korunur |
TXLSPortableChartRectangle | Left, Top, Width ve Height, yakalanan grafik çerçevesine göreli sonlu noktalardır; etkin dikdörtgenler o çerçeve içinde pozitif boyutlar gerektirir |
Count, GetCount, ReadDeclaration | Kaynak sınırlı bir sayı bildirir ve görünüm yapılandırılyken her sıfır tabanlı indeks için bir ilkel kayıt döndürür; bildirimler sonraki yakalamadan önce kopyalanır |
Bu değerler çağıranın bildirdiği görünümdür; otomatik Excel düzeni ya da çıkarılan yazı tipi ölçeklemesi değildir; bunları bağımsızca denetlenmiş bir kaynaktan ya da uygulama tanımlı bir düzenden edinin ve çıktıyı işlemede kullanılan açık yerel yazı tipi eşlemesiyle gözden geçirin
Açık çerçeve boyutları ve iç çizim sınırları, doğrulanmış eksen etiketi yazı tipleri için yeterli alan bırakmalıdır; yetersiz etiket alanı, metni kırpmak ya da sığdırılmış bir ölçek çarpanı uygulamak yerine reddedilir
Uygulamalar, görünüm bırakılana dek çalışma kitabı sahibini canlı tutar; ödünç görünüm bir okuma kirası tutar ve bildirim kaynağını korur; ortaya çıkan değişmez anlık görüntü ne çalışma kitabını ne de sağlayıcıyı korur
Desteklenen çekirdek yansıtma; literal düz dolguları, görünür düz çizgileri, daire işaretçileri, başlık ve gösterge metnini, kategori yerleşimini ve sınırlı açık sayısal işaretleri kapsar; otomatik ölçekler, çözümlenemeyen otomatik işaretçi görünümü, yumuşatma, bilinmeyen zengin uzantılar, yabancı ya da doğrusal olmayan seri atıfları ve gösterilemeyen nokta stilleri çıktıdan önce reddedilir
Geometri ya da gösterge boyutu bildirmek, bilinmeyen grafik uzantılarını ya da doğrulanmamış stilleri yok saymayı yetkilendirmez; bayt, metin, saklanan hücre ve sahne sınırları saklanan kaynak verisi, bildirimler, koparılmış önbellekler ve kayıt taslak alanı için geçerli kalır
Ek XLSValidateCachedChartSceneModel ve XLSRecordCachedChartScene aşırı yüklemeleri, koparılmış bir model için TXLSCachedChartSceneAppearance kabul eder; açık denetimleri ayarlamadan önce onu XLSDefaultCachedChartSceneAppearance ile hazırlayın
lxClassicChartScene içindeki daha alt düzey XLSReadClassicChartScene; saklanan bir TXLSCustomChart'tan, onun tam kaynak hesaplayıcısından ve kiralanmış bir TXLSClassicChartSceneSource'tan çağıranın sahipliğinde koparılmış bir TXLSXChart ile ilkel görünüm ve bütçe sayaçları döndürür; kayıttan sonra döndürülen modeli serbest bırakın
TXLSClassicChartSceneSource.ReadAppearance ilkel bir bildirim sağlar, ReadCell sınırlı sabitlenmiş yerel saklanan değerleri okur, ReadFont verilen metin stilini sınırlı etkili çekirdek yazı tipi verisiyle doldurur ve PaletteColor açık saklanan palet girdilerini çözümler; uygulama uygulamaları sabitlenmiş kaynağı korumalı ve verilen her bayt ve karakter kotasına uymalıdır
| Sahne görünüm üyesi | Anlam |
|---|---|
SeriesMarkerSizePoints | Seri başına sınırlı punto çapları, kesirli değerler dahil; sıfır modelin işaretçi boyutunu korur ve sıfır olmayan bir geçersiz kılma 2 ile 72 punto arasında olmalıdır |
OverrideBorder, BorderColorRGB, BorderWidthPoints | Açık grafik çerçevesi dış çizgi görünümü |
AxisColorRGB, TickColorRGB, GridlineColorRGB, AxisWidthPoints, TickWidthPoints, GridlineWidthPoints | Açık eksen, işaret ve büyük ızgara boyaları ve punto genişlikleri |
AreaFillOpacity, SeriesFillAlpha | Alan opaklığı ve seri dolgu alfası |
UseAxisTickControls, CategoryBetween | Doğrulanmış açık eksen denetimleri ve kategorik yerleşim |
TitleOffsetXPoints, TitleOffsetYPoints | Kaydedicinin sıradan başlık konumuna uygulanan sonlu ofsetler |
OverridePlotInnerRectangle, OverrideTitleRectangle, OverrideLegendRectangle, PlotInnerRectangle, TitleRectangle, LegendRectangle | Grafik çerçevesine göreli literal punto dikdörtgenleri |
PieRadiusRatio | Dairesel çizim yarıçapı, küçük çizim boyutunun sınırlı bir kesri olarak |
Grafik ilkelleri HotXLS'in mevcut düzen ilkesini izler; Excel'in modellenmemiş varsayılanlarını gerektiren grafik galeri görünümü açık bir desteklenmeyen sınır olarak kalır
Doğrudan yerel çalışma kitabı yakalama
CreateXLSPortableCairoRenderGeometry(Fonts, Calibration, Generation, Backend, Options, CacheCapacity), yerel çıktı için kullanılan aynı açık yazı tipi dosyalarıyla, FreeType, HarfBuzz ve metin şekillendirmesiyle desteklenen bir IXLSRenderGeometry döndürür; sütun genişlikleri, çalışma kitabı kalibrasyonuyla gerçek ölçülmüş en büyük basamak genişliğini kullanır
Sağlayıcı koparılmış yazı tipi baytlarının ve sınırlı bir ölçüm önbelleğinin sahibidir, ayırmadan önce yazı tipi ve düzen bütçelerini denetler ve önbelleğe alınmış durumu değiştirmeden önce ölçüm isteklerini doğrular; dolu bir önbellek kapasitesinin ötesine geçmeden önbelleğe alınmamış ölçümler döndürebilir
Yakalama, sağlayıcı üretiminin ve tüm kalibrasyon alanlarının güncel salt okunur çalışma kitabı görünümüyle eşleştiğini doğrular, sağlayıcıyı o görünüm için tutar ve çalışma kitabının varsayılan geometri fabrikasını değişmeden bırakır; sıradan varsayılan yerel geometri açık bir GDI sınırı olarak kalır
Sağlayıcıyı oluşturmadan önce üretimi açıkça bırakılmış bir görünüm üzerinden yakalayın; geçici bir arayüz sonucunu tutmak, okuma kirasını çevreleyen kapsam bitene dek tutabilir
View := Owner.CreateReadOnlyView; Generation := View.Generation; View := nil; Geometry := CreateXLSPortableCairoRenderGeometry(Fonts, Workbook.CaptureRenderCalibration, Generation, xlsrgbBitmap, XLSDefaultPortableCairoOptions, 4096); Snapshot := CaptureXLSPortableRenderSnapshot(Owner, 1, 1, 1, 30, 6, XLSDefaultPortableRenderLimits, Geometry);
Yerel tüketiciler LX_PORTABLE_CORE ve karşılık gelen yerel bağımlılıklarla derlenir; yerel Cairo geometri fabrikasına Windows çağrıları açıkça reddedilir, Windows yakalaması ise aynı kapsamlı aşırı yüklemeler üzerinden mevcut geometri fabrikasını kullanabilir
Gerçek yerel yakalama; yukarıda anlatılan modellenmiş skaleri, zengin metni, desteklenen rasteri, sıradan şekli ve yedi önbelleğe alınmış grafik ailesini destekler; grafik yakalaması özgün alınmış ChartML'i, önbelleğe alınmış noktaları, seyrek hücre depolamasını, paketlenmiş depolamayı ve Workbook üretimini korur
Değişmez yazdırma alanları, kenar boşlukları, sığdırma ya da yüzde ölçeklemesi, yinelenen başlıklar, elle eklenen sonlar ve tüm hücre ya da birleştirilmiş hücre sayfalandırması için taşınabilir yazdırma planları sayfasına bakın
Gelişmiş yakalama köprüsü
lxSemanticSnapshot içindeki IXLSRenderCaptureSource, desteklenen salt okunur çalışma kitabı görünümlerinin uyguladığı iç koordinasyon arayüzüdür; sıradan uygulamalar sahip tabanlı yakalama aşırı yüklemelerini çağırmalıdır
TXLSClassicReadOnlyWorkbookView ve TXLSXReadOnlyWorkbookView, aşağıdaki sekiz işleme yöntemi dahil IXLSRenderCaptureSource uygular; bu sınıflar yakalamayı salt okunur görünümler üzerinden koordine eder, bağdaştırıcı yaşam sürelerini yönetirken uygulamalar çalışma kitabı sahip arayüzlerini tutar ve CaptureXLSPortableRenderSnapshot çağırır
Mevcut TryReadCell yöntemleri salt okunur görünüm üzerinden saklanan hücre anlık görüntüsü sağlar; işleme yöntemleri taşınabilir yakalama için koparılmış görünüm ve geometri ekler
| Üye ya da yardımcı | Amaç |
|---|---|
ValidateRenderRange | Yakalamadan önce 1 tabanlı dikdörtgen sınırlarını ve desteklenmeyen görünüm ayak izlerini denetler |
ReadRenderStyle | 1 tabanlı bir hücre için koparılmış TXLSSemanticCellStyle üst verisi ve zengin metin varlık bayrağı döndürür |
IXLSRenderRichTextCaptureSource, ReadRenderRichText | Sınırlı koparılmış TXLSRenderTextRuns döndüren isteğe bağlı görünüm uzantısı; her TXLSRenderTextRun Text ve etkili anlamsal bir Style içerir, verilen taban stiliyle ve pozitif çalışma/bayt kotalarıyla hücreleri somutlaştırmadan ya da stil havuzlarını değiştirmeden |
RenderRowHeightPoints, RenderColumnWidthPoints | Fiziksel geometri döndürür, gizli boyutları sıfıra daraltır |
IXLSRenderGeometryCaptureSource, SetRenderCaptureGeometry | Yalnızca üretim ve kalibrasyon doğrulamasından sonra açık bir sağlayıcıyı tutan isteğe bağlı görünüm uzantısı; geçersiz sağlayıcılar tutulan görünüm sağlayıcısını değişmeden bırakır |
ReadRenderMerge | Bir hücreyi içeren eksiksiz kapsayıcı 1 tabanlı birleştirme dikdörtgenini bildirir |
ResolveRenderColor | Anlamsal tema/indeksli/RGB görünümünü taşınabilir bir RGB rengine çözümler; desteklenen yerlerde verilen varsayılanı kullanır |
RenderDate1904, RenderRightToLeft | Çalışma kitabı tarih sistemi ve sayfa okuma sırası bağlamını açığa çıkarır |
XLSRenderCaptureLiteral | Değerlendirme olmadan yakalama için desteklenen literal Boolean, sonlu sayı ya da basit tırnaklı metin alt kümesini tanır |
XLSRenderCaptureIntersects | Boşlukla ayrılmış yerel A1 aralıklarını 1 tabanlı bir dikdörtgene karşı sınar, çözümlenemeyen aralık söz dizimini reddeder |
XLSRenderCaptureCondition | Desteklenen koşul alt kümesini mevcut bir skaler üzerinde değerlendirir; 1 ile 8 arası karşılaştırma işleci kodları arasında, arasında değil, eşit, eşit değil, büyük, küçük, büyük-eşit ve küçük-eşit demektir |
XLSRenderCaptureApplyDxf | Desteklenen koparılmış diferansiyel görünümü, yüksek öncelikli biçimlendirmeyi korumak için bir AppliedSlots maskesiyle uygular |
TXLSDxfStyle._MarkRenderUnsupportedAppearance, TXLSDxfStyle._HasRenderUnsupportedAppearance | İç önekli içe aktarma koordinasyon yöntemleri, türlü diferansiyel modelin güvenle işleyemediği görünümü kaydeder ve inceler; Assign işareti korur ve yakalama işaretli eşleşen bir stili reddeder |
Bu köprü yardımcıları EXLSSemanticSnapshot fırlatabilir; genel yakalama bağdaştırıcısı o istisnayı EXLSPortableRender'a çevirir