dotCooCoo
f0c2d8c890
PDF and .ai import: editing data with a UTF-16 description is checked against its pages
...
A PDF or PDF-compatible .ai saved with Preserve Editing carries the
native document as an embedded file, with a hash of its pages at the
end of the file's /Desc. The import read /Desc with from_utf8_lossy and
looked for "hash ". /Desc is a PDF text string, which may be written as
UTF-16BE with a byte order mark (ISO 32000-1 7.9.2.2). Written that
way it holds no UTF-8 "hash ", so the import found no hash, took the
editing data as intact and reopened the native document with no
warning, even after another app had changed the pages.
/Desc is now read with text_string, the importer's decoder for text
strings, so the hash is found in UTF-16BE, UTF-8 and PDFDocEncoding.
Changed pages open as artwork with the "changed in another app"
warning. The embedded file's /UF and /F names are decoded the same
way, so editing data named only in UTF-16BE is found.
A /Desc without a hash is still trusted, as before.
2026-10-19 00:03:51 +07:00
..
2026-10-19 00:03:51 +07:00
2026-10-17 13:49:48 +07:00
2026-10-18 12:34:39 +07:00
2026-10-16 17:55:48 +00:00
2026-10-14 13:49:59 +07:00
2026-10-18 01:24:34 +07:00
2026-10-17 17:13:03 +07:00
2026-10-16 06:16:36 +07:00
2026-10-18 01:11:39 +07:00
2026-10-18 12:34:40 +07:00
2026-10-17 19:38:18 +07:00
2026-10-17 13:49:48 +07:00
2026-10-16 15:27:54 +07:00
2026-10-17 16:38:43 +07:00
2026-10-18 01:27:13 +07:00
2026-10-16 02:26:04 +07:00
2026-10-18 12:34:40 +07:00
2026-10-16 15:27:54 +07:00
2026-10-18 01:27:13 +07:00
2026-10-18 01:21:24 +07:00
2026-10-19 00:03:47 +07:00
2026-10-18 23:50:57 +07:00
2026-10-17 16:38:43 +07:00
2026-10-14 08:01:50 +07:00
2026-10-17 16:38:42 +07:00
2026-10-18 13:26:54 +07:00
2026-10-17 13:52:06 +07:00
2026-10-18 12:36:27 +07:00
2026-10-17 16:38:42 +07:00
2026-10-17 17:13:03 +07:00
2026-10-18 12:36:25 +07:00
2026-10-16 04:44:50 +07:00
2026-10-17 16:38:42 +07:00
2026-10-14 08:11:02 +07:00
2026-10-16 06:16:35 +07:00
2026-10-17 15:14:43 +07:00
2026-10-17 13:20:23 +07:00
2026-10-16 14:58:09 +07:00
2026-10-16 06:16:35 +07:00
2026-10-17 13:06:52 +07:00
2026-10-19 00:03:50 +07:00
2026-10-18 01:32:01 +07:00
2026-10-19 00:03:47 +07:00
2026-10-14 10:13:45 +07:00
2026-10-18 23:50:58 +07:00
2026-10-17 16:38:42 +07:00
2026-10-13 18:17:02 +02:00
2026-10-18 12:40:12 +07:00
2026-10-16 15:27:53 +07:00
2026-10-19 00:03:46 +07:00
2026-10-17 17:13:02 +07:00
2026-10-18 12:36:25 +07:00
2026-10-18 23:48:57 +07:00
2026-10-16 15:27:54 +07:00
2026-10-17 15:14:42 +07:00
2026-10-13 18:19:12 +02:00
2026-10-13 18:17:49 +02:00
2026-10-18 01:27:14 +07:00
2026-10-18 01:21:25 +07:00
2026-10-13 11:53:38 +07:00
2026-10-13 10:52:38 +07:00
2026-10-18 19:02:44 +07:00
2026-10-16 02:21:46 +07:00
2026-10-17 17:13:03 +07:00
2026-10-18 12:34:29 +07:00
2026-10-17 17:49:38 +07:00
2026-10-18 23:50:57 +07:00
2026-10-14 04:56:30 +07:00
2026-10-17 13:49:49 +07:00
2026-10-14 05:11:55 +07:00
2026-10-17 13:49:49 +07:00
2026-10-16 15:27:54 +07:00
2026-10-17 17:13:02 +07:00
2026-10-17 17:13:03 +07:00
2026-10-17 16:17:54 +07:00
2026-10-17 04:09:12 -07:00
2026-10-16 04:08:04 +07:00
2026-10-17 17:13:03 +07:00
2026-10-17 14:43:12 +07:00
2026-10-13 13:36:41 +07:00
2026-10-16 04:44:50 +07:00
2026-10-18 01:21:28 +07:00
2026-10-14 13:49:59 +07:00
2026-10-18 01:24:34 +07:00
2026-10-17 15:14:42 +07:00
2026-10-16 15:27:54 +07:00
2026-10-18 12:34:39 +07:00
2026-10-18 12:34:40 +07:00
2026-10-14 08:01:50 +07:00
2026-10-17 16:38:43 +07:00
2026-10-17 19:13:22 +07:00
2026-10-18 01:21:31 +07:00
2026-10-18 01:21:25 +07:00
2026-10-18 01:27:13 +07:00
2026-10-18 01:32:01 +07:00
2026-10-16 02:56:35 +07:00
2026-10-16 04:04:50 +07:00
2026-10-19 00:03:46 +07:00
2026-10-17 16:38:42 +07:00