Repository navigation
Releases: RobyRew/Download-AI-Chat-PDF
Releases · RobyRew/Download-AI-Chat-PDF
Release list
Download AI Chat PDF v1.1.0
Added
- The floating button is a split pill: PDF exports, the ⚙ half opens a PDF
options card (same style as the progress card) with colours, paper size (A4 / Letter
/ chosen in the dialog), orientation, margins (normal / narrow / none), text size,
header on/off, images on/off, the ⌘P / Ctrl+P takeover, reset button position and a
Save PDF button. Paper, orientation and margins are written as an@pagerule only
while a print is staged. - Userscript-manager menu: PDF options… (the individual toggles moved into the card).
Changed
- ChatGPT printed a blank PDF: on
beforeprintChatGPT mounts its own print document,
and itsbody:has(> .printDocument) > :not(.printDocument) { display: none !important }
rule sits in a cascade layer, which outranks an unlayered!important. The script's
beforeprintlistener (registered at document-start) now stops the sites' print
handlers while it prints, the page is hidden with inline!importantstyles, and
anything mounted into<body>during the print is hidden as well. - Gemini lines overlapped and the end of the chat was cut: Chrome split tall column
flexboxes badly across pages. Each copied message is now rewritten from the live
computed layout — tall column flex / stacked grid containers become blocks (child
alignment, gaps and blockified display kept), inline wrappers around in-flow blocks
become blocks, scroll boxes getoverflow: visible, masks and sticky/fixed
positioning are dropped. Gemini's fade mask on the chat scroller no longer reaches the
PDF. - Claude's chat sat in a narrow column on one side: the outer app wrappers carried the
sidebar width aspadding-left. Wrappers at or above the chat's scroll container now
lose their side padding and margins in the copy. - Claude's answer action bar (copy / read aloud / rating / retry) was printed: its icons
are icon-font glyphs, so the buttons were not empty. Private-use and format characters
no longer count as button text, and buttons whosearia-labelis a known action are
dropped too. - Grok code blocks were light text on a light background after switching to the light
theme (tokens coloured for dark only). Code blocks where both the text and the
background are light get a dark background in the PDF. - Colours are read through a 1×1 canvas, so
oklch()/color()values are understood;
plainrgb()parsing is the fallback when canvas reads are blocked. - The fallback stylesheet (managers without
GM_addStyle) waits for<html>to exist
instead of throwing at document-start.
Install
With Tampermonkey, Violentmonkey or ScriptCat installed, open:
https://github.com/RobyRew/Download-AI-Chat-PDF/releases/latest/download/download-ai-chat-pdf.user.js
Download AI Chat PDF v1.0.0
Added
- Floating PDF button on ChatGPT (
chatgpt.com,chat.openai.com), Gemini
(gemini.google.com), Claude (claude.ai) and Grok (grok.com). Drag to move;
the position is remembered per site. - ⌘P / Ctrl+P runs the same full-chat export instead of printing only the
messages currently on screen. - Full-chat capture: scrolls the chat to the top until no older messages arrive,
then sweeps down one screen at a time copying every message as it renders.
Covers lazy-loaded history (Gemini) and virtualized lists that keep only the
visible messages in the page (ChatGPT, Claude, Grok). - Print copy keeps the site's own styling: messages are deep-copied and wrapped in
shallow copies of their original ancestors so the page CSS keeps applying. - Long prompts that the site collapses behind "Show more" are printed in full;
copy / edit / rating buttons are left out. - Light theme for printing (default) or the page's current theme, PDF header with
title / site / export date / link, and the tab title set to the chat title so the
saved file is named after the chat. - Progress card with Cancel (and Esc); export pauses while the tab is in the
background because hidden tabs stop rendering. - Browser-menu printing (File ▸ Print…) prints the messages already loaded, merged
with the last full capture of the same chat. - Tampermonkey menu: export, theme, header, ⌘P takeover, button visibility,
reset button position.
Install
With Tampermonkey, Violentmonkey or ScriptCat installed, open:
https://github.com/RobyRew/Download-AI-Chat-PDF/releases/latest/download/download-ai-chat-pdf.user.js