add rich output support for slide notes
Docker server image / build-and-push (push) Successful in 3m2s

This commit is contained in:
2026-05-07 10:35:37 -07:00
parent 500b767d58
commit 06d4122e4e
11 changed files with 831 additions and 140 deletions
@@ -68,6 +68,33 @@ message SlideRasterOptions {
}
}
// NotesFormat controls what note representation the server should compute.
enum NotesFormat {
NOTES_FORMAT_UNSPECIFIED = 0;
NOTES_FORMAT_PLAIN = 1;
NOTES_FORMAT_HTML = 2;
}
// HtmlFormattingPolicy configures which formatting features are ignored in HTML mode.
message HtmlFormattingPolicy {
bool ignore_bold = 1;
bool ignore_italic = 2;
bool ignore_underline = 3;
bool ignore_strikethrough = 4;
bool ignore_font_size = 5;
bool ignore_color = 6;
}
// NotesOptions configures note extraction behavior.
message NotesOptions {
// Output format for extracted notes.
NotesFormat format = 1;
// If true, wrap PPTX paragraphs as <p> blocks in HTML mode. If false, emit <br/> only.
optional bool html_use_paragraph_tags = 2;
// Formatting policy for HTML mode.
HtmlFormattingPolicy html_policy = 3;
}
// Slide contains extracted notes and the rendered image URL for one slide.
message Slide {
int32 index = 1;
@@ -76,6 +103,8 @@ message Slide {
string image_url = 3;
// Thumbnail rendered image URL.
string thumbnail_image_url = 4;
// Optional, sanitized HTML version of notes when requested.
string notes_html = 5;
}
// SlideDeck is the final structured conversion artifact.
@@ -100,6 +129,7 @@ message CreateConversionRequest {
string source_filename = 1;
SlideRasterOptions full = 2;
SlideRasterOptions thumbnail = 3;
NotesOptions notes = 4;
}
// CreateConversionResponse returns upload details for the session.