tclpdf

Tagged Check-ins
Login

Tagged Check-ins

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Check-ins with non-propagating tags:

2026-08-31
15:27 Note: tclpdf 1.4: released - what it does technote: [4fc9beaeab] user: alex tags: features, tclpdf
13:24
Version 1.4

- configure.ac and tclpdf.tcl carry 1.4, the manual synopsis follows
- configure regenerated by autoconf leaf check-in: f551c12f1c user: alex tags: trunk, release, version-1.4

2026-08-30
14:59 Note: What defines what - standards, RFCs and vendor notes technote: [5dec93ee8e] user: alex tags: features, tclpdf
2026-08-29
06:48 Note: Wie tclpdf entstanden ist - die Anweisungen in ihrer Reihenfolge technote: [efe770a5be] user: alex tags: tclpdf, background
06:48 Note: How tclpdf came about - the instructions in the order they were given technote: [954d9f4f79] user: alex tags: tclpdf, background
2026-08-28
08:51 Note: What colour emoji cost technote: [3b7f8a9217] user: alex tags: tclpdf, emoji
08:39 Note: What tclpdf would have cost by hand technote: [ddeb0541f2] user: alex tags: tclpdf, usage
00:16 Note: Where the work went on tclpdf technote: [0057db8a15] user: alex tags: tclpdf, usage
2026-08-27
22:46
Skill reference: a structureResume snippet and -min on hyphenate load

- doc/claude/skills/tclpdf-tcl/reference/09-tagged-ua.md - a Sect resumed on a second pass takes a further child, and resuming a leaf is shown refused as TCLPDF STRUCTURE PLACE leaf; every call the manual describes has a snippet again
- doc/claude/skills/tclpdf-tcl/reference/03-text.md - the hyphenate load call names -min, the shortest word broken at all check-in: 2521448eab user: alex tags: trunk, release, version-1.3

22:36 Note: tclpdf 1.3: released - what it does technote: [b72de421e8] user: alex tags: features, tclpdf
22:04 Note: What eight review rounds found that no validator reports technote: [629fd51c73] user: alex tags: features, tclpdf
2026-08-26
22:57 Note: Two writes, the same bytes technote: [e4a58e416d] user: alex tags: features, tclpdf
19:10 Note: Soft masks inside a Type 3 glyph technote: [4dd7f8f558] user: alex tags: tclpdf, softmask
14:07 Note: Why tclpdf does not claim PDF/X conformance technote: [4c0fac9bd3] user: alex tags: tclpdf, pdfx
2026-08-25
20:26 Note: Every refusal has a code technote: [5e0c5b2117] user: alex tags: features, tclpdf
2026-08-24
21:01 Note: Why every form field draws its own appearance technote: [a34d8cd7c7] user: alex tags: features, tclpdf
2026-08-22
22:14
Correct what openssl can and cannot do under a PAdES claim

- sign.tcl - the refusal of a signing-time attribute said openssl and BouncyCastle offer no switch to leave it out and therefore cannot produce a PAdES signature. Measured with OpenSSL 3.6.3: "cms -sign -cades -no_signing_time" makes an object this package takes under /ETSI.CAdES.detached, and the same signer without the switch is refused. The message, the module comment, the manual and the skill reference now say what the switch is and that the LibreSSL shipped as /usr/bin/openssl on macOS has none
- tests/sign.test - sign-6.8 signs with that switch and writes the document both ways in, guarded by the new constraint signingPades so a machine without such an openssl skips rather than fails; sign-6.7 keeps the other half and its comment says which of the two properties it measures check-in: 6b15011020 user: alex tags: trunk, release, version-1.2

18:21 Note: Why tclpdf exists, and what it shows about working with AI technote: [f067db1d2c] user: alex tags: tclpdf, background
18:21 Note: tclpdf 1.2: released - what it does technote: [e916d0e136] user: alex tags: features, tclpdf
2026-08-20
11:14 Note: AES-256 without a crypto library technote: [f2293670cf] user: alex tags: features, tclpdf
2026-08-19
12:30
Version 1.1.1

- configure.ac, tclpdf.tcl, manual header - the three version sites, configure regenerated check-in: 6a5c9009c1 user: alex tags: trunk, release, version-1.1.1

2026-08-18
08:00 Note: tclpdf 1.1: released - what it does technote: [31f97ee656] user: alex tags: features, tclpdf
07:06
Version 1.1, the third norm review built in one sweep, and Order-X

- Version 1.1 in configure.ac, tclpdf.tcl and the manual; configure regenerated
- Third norm review, six reviewers and six build packages, every finding fixed with a test and a mutation proof - what no validator saw: the xpacket header carried a double-encoded byte order mark; writeChannel into a pipe or socket wrote xref offsets from tell; style in a tagged document opened an artifact it never closed; text, image and form place wrote their mark before their checks; a paginated paragraph on a page with no room was refused instead of moved; two font aliases differing by a space shared one resource; the IDTree was not in byte order; ua -part 2 could be lowered and ua 0 broke the write; pdfa and ua took their state keys as options; a refused zugferd left a PDF/A claim behind; /Trapped was a string; a palette with transparent indices in more than one run got a four-number /Mask; a table kept the type area of its first page on pages of another size
- Checks moved before the first written byte throughout: image, form, shading, pattern, svg, shapes, text, leader, textPath, pageNumbers, table, attach, pdfa, zugferd, viewerPreferences, events - a refused call leaves stream, tree, resources and state as they were
- Behaviour that changed with it: Arabic-Indic numbers follow UAX #9 W2/W4/W5 and a ligature counts as a letter for W2; type-area margins follow -unit; an axis value outside its range, -numCopies outside 2-5, unknown events, unknown -style words, unknown -rule values, style keys out of range and non-date info dates are refused; a Type 1 glyph the program lacks is an error; SVG opacity and stroke-opacity are honoured; the CFF Type 0 font is named -Identity-H; -tag inside an open leaf opens a child; 2.0 types name their namespace in any 2.0 file; font info postScript names the instance; U+FEFF is dropped by the standard faces too; a -height max block with no room opens no mark; viewerPreferences subscribes once per document
- Order-X 1.0 on the zugferd call, measured against the specification and its 24 samples: the three BT-24 identifiers, the three levels, the three document types, order-x.xml with /AFRelationship Data by default, the Order-X namespace URI; levels, types and names bound to their family
- Manual, README, download template and ANNOUNCE 1.1 brought in line with the code (installation section, optional packages with tdom 0.9.0, every option and value the review named, Order-X); tests/shaping.test spells its supplementary-plane characters from UTF-8 bytes so nothing is skipped under 8.6; the zugferd test helper removes the XML it writes
- Module versions +0.1 for the 32 modules changed since 4ee4b1a1 that were not raised yet
- KNOWN SVG group opacity as a transparency group, the generic H type without an example, the non-cursive right-to-left scripts of the supplementary planes check-in: 5c22d9ea59 user: alex tags: trunk, release, version-1.1

2026-08-10
15:00 Note: tclpdf 1.0: released - what it does technote: [6c35784c4d] user: alex tags: features, tclpdf
14:32
Add the functional code of tclpdf 1.0 - stages 1 to 6

- 42 Tcl modules implementing document core, TrueType embedding and subsetting, JPEG and PNG images, tables, SVG and ZUGFeRD as PDF/A-3B, loaded lazily through a topic table in document.tcl
- 20 test files covering every module, run in a single interpreter by tests/all.tcl, green under Tcl 8.6.18 and Tcl 9.0.4
- 18 examples in examples plus a shared common.tcl, writing 20 documents
- tools: coverage.tcl reports which document methods nothing calls, svgcheck.sh compares SVG output against rsvg-convert, mkafm.tcl generates afmData.tcl from the Adobe metrics
- configure.ac and pkgIndex.tcl.in list every module, each with its own version and open-ended dependencies
- doc/tclpdf.md rewritten as the full manual, one paragraph per line, covering all public commands
- tools/archive.sh excludes docs from the source archive
- uv/template-download.html lists only tdom as an optional package
- README states the scope, the licence and why no font is part of the package check-in: e1795e6562 user: alex tags: trunk, release, version-1.0