docx_file_viewer
A Flutter package for rendering DOCX files with native widgets. View, zoom, search, and interact with Word documents.
1.0.3
4.7K downloads/mo
#3935 most downloaded on pub.dev
alihassan143/htmltopdfwidgets
What this package is like to depend on
Last release 28 days ago
26 Jul 2026
Release timing varies
gaps range from 2 months to 1.1 years
Some releases are documented
notes for 3 of 11 stable releases
Nothing withdrawn
no release was ever pulled
2 years old
11 releases · first in 2024
4 releases in the last 12 months
see the full history below
Release timeline
11 releases · Nov 2024 to Jul 2026Releases
latest 11-
1.0.326 Jul 2026Release notes
Open source →- Bump version and add CHANGELOG entry for the twips/points pixel-scale
fix, PUA bullet fallback, and dotted/dashed border fix. - Loosen the docx_creator dependency from an exact pin to ^1.3.0 (flagged
byflutter pub publish --dry-runas too tight for consumers). - Add docx_file_viewer to the Pub.dev publish workflow's package matrix,
now that trusted publishing is configured for it on pub.dev.
Release notes
Open source →🐛 Bug Fixes
- Image/shape sizing was too small —
DocxImage/DocxInlineImage/DocxShapeBlockdimensions are stored in points, but were passed straight through to Flutter'swidth/heightas if already logical pixels; they're now correctly scaled viaDocxUnits.pointsToPixels(points × 96/72), matching how the same document renders in Word DocxUnits.twipsToPixelsdivided by 20 (twips → points) and stopped there instead of continuing on to pixels; fixed to twips → points → pixels (twips / 20 * 1.333)- List bullets stored as Word's Symbol/Wingdings Private-Use-Area glyphs (e.g.
U+F0B7) rendered as a "tofu" box on platforms without that exact font installed; these now fall back to a portable Unicode bullet instead - Dotted/dashed paragraph and table borders were invisible — Flutter's
BorderSideonly supports solid or none, and they were previously mapped toBorderStyle.none; they're now drawn solid instead of silently disappearing (the closer of the two approximations)
🔧 Improvements
- Bumped
docx_creatordependency to1.3.0
🧪 Tests
- Added
test/rendering_accuracy_fixes_test.dart— covers the twips/points → pixel scaling fix (image and shape sizing) and the Private-Use-Area bullet fallback
- Bump version and add CHANGELOG entry for the twips/points pixel-scale
-
1.0.216 May 2026Release notes
Open source →✨ New Features
- First-line indent (
w:firstLine) — positiveindentFirstLinenow prepends a zero-heightWidgetSpanspacer so the first line is indented relative to the paragraph body - Hanging indent (
w:hanging) — negativeindentFirstLinevalues reduce the container left padding to approximate hanging-indent layout - Line-rule variants —
lineRulevalues'exact'and'atLeast'are now handled separately from'auto':exactclamps the scale to 0.5–10,atLeastfloors it at 1.0
🐛 Bug Fixes
- Multi-column vertical merge placeholder — a cell spanning N columns across multiple rows previously produced N separate thin placeholders in continuation rows; it now correctly emits one wide placeholder whose width covers all spanned columns
🧪 Tests
- Added
test/parser_test.dart— 5 unit tests covering the cascade rule, table grid matrix, crash immunity, first-line indent spacer, and line-rule variants - Added
test/widget_test.dart— 4 widget tests covering row heightConstrainedBox, multi-column vMerge placeholder child count, search highlight character ranges, and floating imageRowlayout
🔧 Improvements
- Extracted
_resolveLineHeightScale()helper inParagraphBuilderto centralise line-height logic TableBuilder._buildRow()now tracks a parallelskipColSpansarray alongsideskipCountsto correctly group multi-column vertical merges- Added
.claude/andgraphify-out/to.gitignore
- First-line indent (
-
1.0.107 Jan 2026Release notes
Open source →🎉 Stable Release
This release marks the stable 1.0.0 version with a complete architecture overhaul and significant feature improvements.
✨ New Features
- Paged View Mode - Documents can now be rendered in distinct page blocks (print layout style) in addition to continuous scrolling
- Content-Aware Pagination - Smart page breaks based on content height estimation
- Embedded Font Loading - Full support for OOXML font embedding with deobfuscation
- Theme Color Resolution - Proper handling of theme colors with tint/shade modifiers
- Drop Cap Support - Rich drop cap rendering with proper text wrapping
- Floating Image Layout - Left/right floating images with text wrap
- Headers & Footers - First page, odd/even page header/footer support
- Footnotes & Endnotes - Interactive footnote/endnote references with tap-to-view dialog
- Table Conditional Formatting - Support for first row, last row, first column, last column, and banded styles
- Checkbox Support - Interactive checkbox rendering in documents
- Shape Rendering - Basic shape support (rectangles, text boxes)
🔧 Improvements
- Search Navigation - Auto-scroll to search matches with dynamic alignment
- Style Resolution - Full style inheritance from named styles, paragraph, and run properties
- Color Resolution - Theme color, tint, and shade calculation
- Border Rendering - Complete border support for paragraphs and tables
- Performance - Optimized widget generation for large documents
🏗️ Architecture
- Migrated to modular builder pattern (
ParagraphBuilder,TableBuilder,ListBuilder, etc.) - Introduced
DocxWidgetGeneratoras the central rendering engine - Added
DocxViewThemefor comprehensive theming support - Added
DocxSearchControllerfor programmatic search control - Added
BlockIndexCounterfor search indexing
-
1.0.004 Jan 2026Nothing published for this version
-
0.0.704 Dec 2024Nothing published for this version
-
0.0.603 Dec 2024Nothing published for this version
-
0.0.501 Dec 2024Nothing published for this version
-
0.0.429 Nov 2024Nothing published for this version
-
0.0.329 Nov 2024Nothing published for this version
-
0.0.228 Nov 2024Nothing published for this version
-
0.0.127 Nov 2024Nothing published for this version