Revision: 16579
          http://sourceforge.net/p/skim-app/code/16579
Author:   hofman
Date:     2026-09-30 16:42:31 +0000 (Wed, 30 Sep 2026)
Log Message:
-----------
Add some spaces in fdf

Modified Paths:
--------------
    trunk/NSDocument_SKExtensions.m
    trunk/PDFAnnotation_SKExtensions.m
    trunk/SKFDFParser.m

Modified: trunk/NSDocument_SKExtensions.m
===================================================================
--- trunk/NSDocument_SKExtensions.m     2026-09-30 15:53:20 UTC (rev 16578)
+++ trunk/NSDocument_SKExtensions.m     2026-09-30 16:42:31 UTC (rev 16579)
@@ -299,28 +299,28 @@
     NSMutableString *string = [NSMutableString 
stringWithFormat:@"%%FDF-1.2\n%%%C%C%C%C\n", (unichar)0xe2, (unichar)0xe3, 
(unichar)0xcf, (unichar)0xd3];
     NSMutableString *annots = [NSMutableString string];
     for (PDFAnnotation *note in [self notes]) {
-        [string appendFormat:@"%ld 0 obj<<%@>>\nendobj\n", (long)(++i), [note 
fdfString]];
+        [string appendFormat:@"%ld 0 obj << %@>>\nendobj\n", (long)(++i), 
[note fdfString]];
         [annots appendFormat:@"%ld 0 R ", (long)i];
     }
-    [string appendFormat:@"%ld 0 obj<<", (long)(++i)];
+    [string appendFormat:@"%ld 0 obj << ", (long)(++i)];
     [string appendFDFName:SKFDFFDFKey];
-    [string appendString:@"<<"];
+    [string appendString:@"<< "];
     [string appendFDFName:SKFDFAnnotationsKey];
-    [string appendFormat:@"[%@]", annots];
+    [string appendFormat:@"[ %@] ", annots];
     [string appendFDFName:SKFDFFileKey];
     [string appendString:@"("];
     if (filename)
         [string appendString:[[filename 
lossyStringUsingEncoding:NSISOLatin1StringEncoding] 
stringByEscapingParenthesis]];
-    [string appendString:@")"];
+    [string appendString:@") "];
     if ([fileIDStrings count] == 2) {
         [string appendFDFName:SKFDFFileIDKey];
-        [string appendFormat:@"[<%@><%@>]", [fileIDStrings objectAtIndex:0], 
[fileIDStrings objectAtIndex:1]];
+        [string appendFormat:@"[<%@><%@>] ", [fileIDStrings objectAtIndex:0], 
[fileIDStrings objectAtIndex:1]];
     }
-    [string appendString:@">>"];
+    [string appendString:@">> "];
     [string appendString:@">>\nendobj\n"];
     [string appendString:@"trailer\n<<"];
     [string appendFDFName:SKFDFRootKey];
-    [string appendFormat:@" %ld 0 R", (long)i];
+    [string appendFormat:@" %ld 0 R ", (long)i];
     [string appendString:@">>\n"];
     [string appendString:@"%%EOF\n"];
     return [string dataUsingEncoding:NSISOLatin1StringEncoding];

Modified: trunk/PDFAnnotation_SKExtensions.m
===================================================================
--- trunk/PDFAnnotation_SKExtensions.m  2026-09-30 15:53:20 UTC (rev 16578)
+++ trunk/PDFAnnotation_SKExtensions.m  2026-09-30 16:42:31 UTC (rev 16579)
@@ -414,48 +414,48 @@
     [fdfString appendFDFName:SKFDFTypeKey];
     [fdfString appendFDFName:SKFDFAnnotation];
     [fdfString appendFDFName:SKFDFAnnotationTypeKey];
-    [fdfString appendString:[self 
valueForAnnotationKey:PDFAnnotationKeySubtype]];
+    [fdfString appendFormat:@"%@ ", [self 
valueForAnnotationKey:PDFAnnotationKeySubtype]];
     [fdfString appendFDFName:SKFDFAnnotationBoundsKey];
-    [fdfString appendFormat:@"[%g %g %g %g]", NSMinX(bounds), NSMinY(bounds), 
NSMaxX(bounds), NSMaxY(bounds)];
+    [fdfString appendFormat:@"[ %g %g %g %g ] ", NSMinX(bounds), 
NSMinY(bounds), NSMaxX(bounds), NSMaxY(bounds)];
     [fdfString appendFDFName:SKFDFAnnotationPageIndexKey];
-    [fdfString appendFormat:@" %lu", (unsigned long)[self pageIndex]];
+    [fdfString appendFormat:@"%lu ", (unsigned long)[self pageIndex]];
     [fdfString appendFDFName:SKFDFAnnotationFlagsKey];
-    [fdfString appendString:@" 4"];
+    [fdfString appendString:@"4 "];
     if (a > 0.0) {
         [fdfString appendFDFName:SKFDFAnnotationColorKey];
-        [fdfString appendFormat:@"[%g %g %g]", r, g, b];
+        [fdfString appendFormat:@"[ %g %g %g ] ", r, g, b];
     }
     if (border) {
         [fdfString appendFDFName:SKFDFAnnotationBorderStylesKey];
-        [fdfString appendString:@"<<"];
+        [fdfString appendString:@"<< "];
         if ([border lineWidth] > 0.0) {
             [fdfString appendFDFName:SKFDFAnnotationLineWidthKey];
-            [fdfString appendFormat:@" %g", [border lineWidth]];
+            [fdfString appendFormat:@"%g ", [border lineWidth]];
             [fdfString appendFDFName:SKFDFAnnotationBorderStyleKey];
             [fdfString 
appendFDFName:SKFDFBorderStyleFromPDFBorderStyle([border style])];
             if ([border style] == kPDFBorderStyleDashed) {
                 [fdfString appendFDFName:SKFDFAnnotationDashPatternKey];
-                [fdfString appendFormat:@"[%@]", [[[border dashPattern] 
valueForKey:@"stringValue"] componentsJoinedByString:@" "]];
+                [fdfString appendFormat:@"[ %@ ] ", [[[border dashPattern] 
valueForKey:@"stringValue"] componentsJoinedByString:@" "]];
             }
         } else {
             [fdfString appendFDFName:SKFDFAnnotationLineWidthKey];
-            [fdfString appendString:@" 0"];
+            [fdfString appendString:@"0 "];
         }
-        [fdfString appendString:@">>"];
+        [fdfString appendString:@">> "];
     }
     if (contents) {
         [fdfString appendFDFName:SKFDFAnnotationContentsKey];
         [fdfString appendString:@"("];
         [fdfString appendString:[[contents 
lossyStringUsingEncoding:NSISOLatin1StringEncoding] 
stringByEscapingParenthesis]];
-        [fdfString appendString:@")"];
+        [fdfString appendString:@") "];
     }
     if (modDate) {
         [fdfString appendFDFName:SKFDFAnnotationModificationDateKey];
-        [fdfString appendFormat:@"(%@)", [modDate PDFDescription]];
+        [fdfString appendFormat:@"(%@) ", [modDate PDFDescription]];
     }
     if (userName) {
         [fdfString appendFDFName:SKFDFAnnotationUserNameKey];
-        [fdfString appendFormat:@"(%@)", [[userName 
lossyStringUsingEncoding:NSISOLatin1StringEncoding] 
stringByEscapingParenthesis]];
+        [fdfString appendFormat:@"(%@) ", [[userName 
lossyStringUsingEncoding:NSISOLatin1StringEncoding] 
stringByEscapingParenthesis]];
     }
     if ([self hasInteriorColor]) {
         a = 0.0;
@@ -462,51 +462,51 @@
         [[[self interiorColor] colorUsingColorSpaceName:NSDeviceRGBColorSpace] 
getRed:&r green:&g blue:&b alpha:&a];
         if (a > 0.0) {
             [fdfString appendFDFName:SKFDFAnnotationInteriorColorKey];
-            [fdfString appendFormat:@"[%g %g %g]", r, g, b];
+            [fdfString appendFormat:@"[ %g %g %g ] ", r, g, b];
         }
     }
     if ([type isEqualToString:SKNFreeTextString]) {
         [[[self fontColor] colorUsingColorSpaceName:NSDeviceRGBColorSpace] 
getRed:&r green:&g blue:&b alpha:&a];
         [fdfString appendFDFName:SKFDFDefaultAppearanceKey];
-        [fdfString appendFormat:@"(/%@ %g Tf %g %g %g rg)", [self fontName], 
[self fontSize], r, g, b];
+        [fdfString appendFormat:@"(/%@ %g Tf %g %g %g rg) ", [self fontName], 
[self fontSize], r, g, b];
         [fdfString appendFDFName:SKFDFDefaultStyleKey];
         [[[self fontColor] colorUsingColorSpace:[NSColorSpace sRGBColorSpace]] 
getRed:&r green:&g blue:&b alpha:&a];
-        [fdfString appendFormat:@"(font: %@ %gpt; text-align:%@; 
color:#%.2x%.2x%.2x)", [self fontName], [self fontSize], 
alignmentStyleKeyword([self alignment]), (unsigned int)(255*r), (unsigned 
int)(255*g), (unsigned int)(255*b)];
+        [fdfString appendFormat:@"(font: %@ %gpt; text-align:%@; 
color:#%.2x%.2x%.2x) ", [self fontName], [self fontSize], 
alignmentStyleKeyword([self alignment]), (unsigned int)(255*r), (unsigned 
int)(255*g), (unsigned int)(255*b)];
         [fdfString appendFDFName:SKFDFAnnotationAlignmentKey];
-        [fdfString appendFormat:@" %ld", 
(long)SKFDFFreeTextAnnotationAlignmentFromPDFFreeTextAnnotationAlignment([self 
alignment])];
+        [fdfString appendFormat:@"%ld ", 
(long)SKFDFFreeTextAnnotationAlignmentFromPDFFreeTextAnnotationAlignment([self 
alignment])];
     } else if ([type isEqualToString:SKNHighlightString] || [type 
isEqualToString:SKNUnderlineString] || [type 
isEqualToString:SKNStrikeOutString]) {
         [fdfString appendFDFName:SKFDFAnnotationQuadrilateralPointsKey];
-        [fdfString appendString:@"["];
+        [fdfString appendString:@"[ "];
         for (NSValue *value in [self quadrilateralPoints]) {
             NSPoint point = [value pointValue];
             [fdfString appendFormat:@"%g %g ", point.x + NSMinX(bounds), 
point.y + NSMinY(bounds)];
         }
-        [fdfString appendString:@"]"];
+        [fdfString appendString:@"] "];
     } else if ([type isEqualToString:SKNLineString]) {
         [fdfString appendFDFName:SKFDFAnnotationLineStylesKey];
-        [fdfString appendString:@"["];
+        [fdfString appendString:@"[ "];
         [fdfString appendFDFName:SKFDFLineStyleFromPDFLineStyle([self 
startLineStyle])];
         [fdfString appendFDFName:SKFDFLineStyleFromPDFLineStyle([self 
endLineStyle])];
-        [fdfString appendString:@"]"];
+        [fdfString appendString:@"] "];
         NSPoint startPoint = SKAddPoints([self startPoint], bounds.origin);
         NSPoint endPoint = SKAddPoints([self endPoint], bounds.origin);
         [fdfString appendFDFName:SKFDFAnnotationLinePointsKey];
-        [fdfString appendFormat:@"[%g %g %g %g]", startPoint.x, startPoint.y, 
endPoint.x, endPoint.y];
+        [fdfString appendFormat:@"[ %g %g %g %g ] ", startPoint.x, 
startPoint.y, endPoint.x, endPoint.y];
     } else if ([type isEqualToString:SKNInkString]) {
         NSPoint point;
         NSInteger i, iMax;
         [fdfString appendFDFName:SKFDFAnnotationInkListKey];
-        [fdfString appendString:@"["];
+        [fdfString appendString:@"[ "];
         for (NSBezierPath *path in [self paths]) {
             iMax = [path elementCount];
-            [fdfString appendString:@"["];
+            [fdfString appendString:@"[ "];
             for (i = 0; i < iMax; i++) {
                 point = [path associatedPointForElementAtIndex:i];
                 [fdfString appendFormat:@"%g %g ", point.x + NSMinX(bounds), 
point.y + NSMinY(bounds)];
             }
-            [fdfString appendString:@"]"];
+            [fdfString appendString:@"] "];
         }
-        [fdfString appendString:@"]"];
+        [fdfString appendString:@"] "];
     } else if ([type isEqualToString:SKNNoteString] || [type 
isEqualToString:SKNTextString] || [type isEqualToString:SKNStampString]) {
         [fdfString appendFDFName:SKFDFAnnotationIconTypeKey];
         [fdfString 
appendFDFName:SKFDFTextAnnotationIconTypeFromPDFTextAnnotationIconType([self 
iconType])];
@@ -513,14 +513,14 @@
     } else if ([type isEqualToString:SKNWidgetString]) {
         NSString *ft = [self widgetFieldType];
         [fdfString appendFDFName:SKFDFAnnotationFieldTypeKey];
-        [fdfString appendString:ft];
+        [fdfString appendFormat:@"%@ ", ft];
         [fdfString appendFDFName:SKFDFAnnotationFieldNameKey];
-        [fdfString appendFormat:@"(%@)", [[[self fieldName] ?: @"" 
lossyStringUsingEncoding:NSISOLatin1StringEncoding] 
stringByEscapingParenthesis]];
+        [fdfString appendFormat:@"(%@) ", [[[self fieldName] ?: @"" 
lossyStringUsingEncoding:NSISOLatin1StringEncoding] 
stringByEscapingParenthesis]];
         [fdfString appendFDFName:SKFDFAnnotationFieldValueKey];
         if ([ft isEqualToString:PDFAnnotationWidgetSubtypeButton]) {
-            [fdfString appendFormat:@"/%@", [self buttonWidgetState] == 
kPDFWidgetOnState ? [self buttonWidgetStateString] : @"Off"];
+            [fdfString appendFormat:@"/%@ ", [self buttonWidgetState] == 
kPDFWidgetOnState ? [self buttonWidgetStateString] : @"Off"];
         } else {
-            [fdfString appendFormat:@"(%@)", [[[self widgetStringValue] ?: @"" 
lossyStringUsingEncoding:NSISOLatin1StringEncoding] 
stringByEscapingParenthesis]];
+            [fdfString appendFormat:@"(%@) ", [[[self widgetStringValue] ?: 
@"" lossyStringUsingEncoding:NSISOLatin1StringEncoding] 
stringByEscapingParenthesis]];
         }
         
     }

Modified: trunk/SKFDFParser.m
===================================================================
--- trunk/SKFDFParser.m 2026-09-30 15:53:20 UTC (rev 16578)
+++ trunk/SKFDFParser.m 2026-09-30 16:42:31 UTC (rev 16579)
@@ -479,6 +479,6 @@
 
 @implementation NSMutableString (SKFDFExtensions)
 - (void)appendFDFName:(SKFDFString)name {
-    [self appendFormat:@"/%s", name];
+    [self appendFormat:@"/%s ", name];
 }
 @end

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.



_______________________________________________
Skim-app-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/skim-app-commit

Reply via email to