Skip to content

Commit

Permalink
fix #776 swapped bold and italic flags in STYLE entity
Browse files Browse the repository at this point in the history
  • Loading branch information
mozman committed Nov 11, 2022
1 parent 32cdaa0 commit 0e6a753
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 2 deletions.
2 changes: 2 additions & 0 deletions NEWS.md
Expand Up @@ -20,6 +20,8 @@ Version 1.0.0rc1 - dev
- BUGFIX: [#751](https://github.com/mozman/ezdxf/issues/751)
fix invalid DXF attribute name
- BUGFIX: fix configuration defaults for pdsize and pdmode for the `drawing` add-on
- BUGFIX: [#776](https://github.com/mozman/ezdxf/issues/776)
fix swapped bold and italic flag for extended font data in STYLE entity

Version 0.18.1 - 2022-09-03
---------------------------
Expand Down
27 changes: 27 additions & 0 deletions examples/extended_textstyle_features.py
@@ -0,0 +1,27 @@
# Copyright (c) 2022, Manfred Moitzi
# License: MIT License

import pathlib
import ezdxf

CWD = pathlib.Path("~/Desktop/Outbox").expanduser()
if not CWD.exists():
CWD = pathlib.Path(".")

doc = ezdxf.new()
doc.styles.add("Arial", font="Arial.ttf")
text_style = doc.styles.add("ArialItalic", font="Arial.ttf")
text_style.set_extended_font_data(family='Arial', italic=True, bold=False)
text_style = doc.styles.add("ArialBold", font="Arial.ttf")
text_style.set_extended_font_data(family='Arial', italic=False, bold=True)
text_style = doc.styles.add("ArialItalicBold", font="Arial.ttf")
text_style.set_extended_font_data(family='Arial', italic=True, bold=True)

msp = doc.modelspace()
msp.add_text("Arial", dxfattribs={"style": "Arial"}).set_placement((0, 0))
msp.add_text("Arial Italic", dxfattribs={"style": "ArialItalic"}).set_placement((0, 5))
msp.add_text("Arial Bold", dxfattribs={"style": "ArialBold"}).set_placement((0, 10))
msp.add_text("Arial Italic Bold", dxfattribs={"style": "ArialItalicBold"}).set_placement((0, 15))

doc.set_modelspace_vport(25, center=(10, 7.5))
doc.saveas(CWD / "extended_textstyle_features.dxf")
4 changes: 2 additions & 2 deletions src/ezdxf/entities/textstyle.py
Expand Up @@ -89,8 +89,8 @@ class Textstyle(DXFEntity):

DXFTYPE = "STYLE"
DXFATTRIBS = DXFAttributes(base_class, acdb_symbol_table_record, acdb_style)
BOLD = 0b01000000000000000000000000
ITALIC = 0b10000000000000000000000000
ITALIC = 0b01000000000000000000000000
BOLD = 0b10000000000000000000000000

def load_dxf_attribs(
self, processor: SubclassProcessor = None
Expand Down

0 comments on commit 0e6a753

Please sign in to comment.