mirror of
https://github.com/UglyToad/PdfPig.git
synced 2025-09-20 03:17:57 +08:00
handle indirect references appearing in cid font widths array #174
This commit is contained in:
@@ -166,7 +166,7 @@
|
|||||||
var counter = 0;
|
var counter = 0;
|
||||||
while (counter < size)
|
while (counter < size)
|
||||||
{
|
{
|
||||||
var firstCode = (NumericToken)widthArray.Data[counter++];
|
var firstCode = DirectObjectFinder.Get<NumericToken>(widthArray.Data[counter++], pdfScanner);
|
||||||
var next = widthArray.Data[counter++];
|
var next = widthArray.Data[counter++];
|
||||||
if (DirectObjectFinder.TryGet(next, pdfScanner, out ArrayToken array))
|
if (DirectObjectFinder.TryGet(next, pdfScanner, out ArrayToken array))
|
||||||
{
|
{
|
||||||
@@ -175,14 +175,14 @@
|
|||||||
|
|
||||||
for (var i = 0; i < arraySize; i++)
|
for (var i = 0; i < arraySize; i++)
|
||||||
{
|
{
|
||||||
var width = (NumericToken)array.Data[i];
|
var width = DirectObjectFinder.Get<NumericToken>(array.Data[i], pdfScanner);
|
||||||
widths[startRange + i] = width.Double;
|
widths[startRange + i] = width.Double;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
var secondCode = (NumericToken)next;
|
var secondCode = DirectObjectFinder.Get<NumericToken>(next, pdfScanner);
|
||||||
var rangeWidth = (NumericToken)widthArray.Data[counter++];
|
var rangeWidth = DirectObjectFinder.Get<NumericToken>(widthArray.Data[counter++], pdfScanner);
|
||||||
var startRange = firstCode.Int;
|
var startRange = firstCode.Int;
|
||||||
var endRange = secondCode.Int;
|
var endRange = secondCode.Int;
|
||||||
var width = rangeWidth.Double;
|
var width = rangeWidth.Double;
|
||||||
|
Reference in New Issue
Block a user