示例#1
0
    def write_font(self, font: Font) -> None:
        """Write attributes to a pptx.text.text.Font object."""
        font.name = self._get_write_value(new_value=self.name, old_value=font.name)
        font.bold = self._get_write_value(new_value=self.bold, old_value=font.bold)
        font.italic = self._get_write_value(new_value=self.italic, old_value=font.italic)
        font.underline = self._get_write_value(new_value=self.underline, old_value=font.underline)

        if self.language_id == _USE_DEFAULT:
            font.language_id = MSO_LANGUAGE_ID.NONE
        else:
            font.language_id = self._get_write_value(new_value=self.language_id, old_value=font.language_id)

        if self.size is not None:
            if self.size == _USE_DEFAULT:
                font.size = None
            else:
                font.size = Pt(self.size)

        if self.color_rgb is not None:
            font.color.rgb = self.color_rgb

        if self.fill_style is not None:
            self.fill_style.write_fill(font.fill)

        self._write_caps(font)
        self._write_strikethrough(font)
示例#2
0
 def font(self):
     """
     The |Font| object that provides access to the text properties for
     these tick labels, such as bold, italic, etc.
     """
     defRPr = self._element.defRPr
     font = Font(defRPr)
     return font
示例#3
0
 def font(self):
     """Font object controlling text format defaults for this chart."""
     defRPr = (
         self._chartSpace
             .get_or_add_txPr()
             .p_lst[0]
             .get_or_add_pPr()
             .get_or_add_defRPr()
     )
     return Font(defRPr)
                # for paragraph in shape.text_frame.paragraphs:
                #     _paragraph = {}
                #     _paragraphs.append(_paragraph)
                #     fff = paragraph.font
                #     try:
                #         _paragraph["font"] = fff.name
                #     except Exception:
                #         _paragraph["font"] = null
                #     if fff.size != None:
                #         _paragraph["size"] = Length(fff.size).pt
                #     _paragraph["fill"] = captureFill(fff.fill)
            for txBody in shape._element:
                try:
                    if hasattr(txBody, "p_lst"):
                        for rPr in iter_rPrs(txBody):
                            fon = Font(rPr)
                except:
                    print("error")
            panel["marginBottom"] = Length(shape.text_frame.margin_bottom).pt
            panel["marginTop"] = Length(shape.text_frame.margin_top).pt
            panel["marginLeft"] = Length(shape.text_frame.margin_left).pt
            panel["marginRight"] = Length(shape.text_frame.margin_right).pt

        print(shape.part)
        if hasattr(shape, "shape_type"):
            panel["shape_type"] = "{}".format(shape.shape_type)
        if hasattr(shape, "text"):
            print("text {}".format(shape.text.encode('utf-8')))
            panel["text"] = shape.text
        if hasattr(shape, "height"):
            print("height {}".format(Length(shape.height).pt))
示例#5
0
 def font(self):
     return Font(element('a:rPr'))
示例#6
0
 def underline_set_fixture(self, request):
     rPr_cxml, new_value, expected_rPr_cxml = request.param
     font = Font(element(rPr_cxml))
     expected_xml = xml(expected_rPr_cxml)
     return font, new_value, expected_xml
示例#7
0
 def underline_get_fixture(self, request):
     rPr_cxml, expected_value = request.param
     font = Font(element(rPr_cxml))
     return font, expected_value
示例#8
0
 def language_id_get_fixture(self, request):
     rPr_cxml, expected_value = request.param
     font = Font(element(rPr_cxml))
     return font, expected_value
示例#9
0
 def font(self):
     return Font(element("a:rPr"))