Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

O que é?

Classe com métodos de fábrica estáticos para auxiliar a montagem dos objetos de configuração de fontes, formatação e bordas de célula para a classe FwPrinterXlsx.

Cada um dos métodos é responsável pela construção de um objeto da classe JsonObject que servirá de opçõespoderá ser utilizado pelos métodos que aceitam configurações/opções como parâmetro na classe FwPrinterXlsx.

Aviso

A classe está disponível a partir das libs com label igual ou superior a 20201009.

A implementação de todos os métodos permite: (1) seja feita a chamada sem informar parâmetro o parâmetro de configuração, com isso é retornado um objeto com as configurações padrão ou (2) seja informado um objeto com configurações preenchidas por parâmetro para que o método defina as demais configurações.

Métodos

MakeFont()

Constrói um objeto para a configuração de fonte a ser utilizado na classe/método FwPrinterXlsx():SetFontConfig().

Sintaxe: FwXlsxPrinterConfig():MakeFont(jFontConfig) → jFontConfig

As propriedades preenchidas pelo método no objeto jFontConfig retornado são:

NomeTipoObrigatórioDefaultReferênciaDescrição
fontcaracterexFwPrinterFont():Calibri()xcódigo da fonte para uso
sizenuméricox11xtamanho da fonte para uso
italiclógicox.F.xdeve aplicar itálico?
boldlógicox.F.xdeve aplicar negrito?
underlinelógicox.F.xdeve aplicar sublinhado?
Sintaxe:
Bloco de código
languagecpp
// recupera todas as propriedades com valor padrão para alterar depois
jDefConfig := FwXlsxPrinterConfig():MakeFont
(jFontConfig) → jFontConfig
()
jDefConfig['font'] := FwPrinterFont():ArialBlack()
jDefConfig['size'] := 13

jSpecCfg := JsonObject():New()
jSpecCfg['size'] := 15
jSpecCfg['bold'] := .T.
// mantém as configurações definidas e preenche as demais com os valores padrões
jSpecCfg := FwXlsxPrinterConfig():MakeFont(jSpecCfg)


MakeFormat()

Constrói um objeto para a configuração de formatação a ser utilizado na classe/método FwPrinterXlsx():SetCellsFormatConfig().

Sintaxe: FwXlsxPrinterConfig():MakeFormat(jFmtConfig) → jFmtConfig

As propriedades preenchidas pelo método no objeto jFmtConfig retornado são:

NomeTipoObrigatórioDefaultReferênciaDescrição
hor_aligncaracterexFwXlsxHorizontalAlignment():Default()xindica o alinhamento horizontal do conteúdo na célula
vert_aligncaracterexFwXlsxVerticalAlignment():Default()xindica o alinhamento vertical do conteúdo na célula
text_wraplógicox.F.xindica se deve aplicar quebra de texto
degreesnuméricox0xindica a rotação do texto em graus 0 - 359
text_colorcaracterexFFFFFF  // pretoxcor para o texto
background_colorcaracterex000000  // brancoxcor de fundo da célula
custom_formatcaracterex""xformatação personalizada para o conteúdo
Bloco de código
languagecpp
// apoio para o tipo de alinhamento
oHorizontal := FwXlsxCellAlignment():Horizontal()
oVertical := FwXlsxCellAlignment():Vertical()

A implementação que seja feito sem informar parâmetro e portanto é recuperado um objeto com as configurações padrões ou, que seja realizada a definição de algumas propriedades específicas que o método preencha as demais com o valor padrão.

Bloco de código
languagecpp
// recupera todas as propriedades com valor padrão para alterar depois
jDefConfig := FwXlsxPrinterConfig():MakeFontMakeFormat()
jDefConfig['fonthor_align'] := FwPrinterFont()oHorizontal:ArialBlackCenter()
jDefConfig['sizevert_align'] := 13oVertical:Center()

jSpecCfg := JsonObject():New()
jSpecCfg['size'text_color'] := "121212" // cinza claro
jSpecCfg['background_color'] := 15"00FF00" // verde
jSpecCfg['boldcustom_format'] := .T."mmm-aaaa"
// mantém as configurações definidas e preenche as demais com os valores padrões
jSpecCfg := FwXlsxPrinterConfig():MakeFontMakeFormat(jSpecCfg)

MakeFormat()

MakeBorder(

MakeBorder()

Constrói um objeto para a configuração de bordas de célula a ser utilizado na classe/método FwPrinterXlsx():SetBorderConfig().

Sintaxe: FwXlsxPrinterConfig():MakeBorder(jBorderConfig) → jBorderConfig

As propriedades preenchidas pelo método no objeto jBorderConfig retornado são:

NomeTipoObrigatórioDefaultReferênciaDescrição
leftlógicox.F.xdeve usar borda à esquerda?
toplógicox.F.xdeve usar borda acima?
rightlógicox.F.xdeve usar borda à direita?
bottomlógicox.F.xdeve usar borda abaixo?
stylecaracterexFwXlsxBorderStyle():None()xdefine o estilo de borda usar, veja FwXlsxBorderStyle()
colorcaracterexFFFFFF // brancoxdefine a cor para aplicar em todas as bordas
Bloco de código
languagecpp
// recupera todas as propriedades com valor padrão para alterar depois
jDefConfig := FwXlsxPrinterConfig():MakeBorder()
jDefConfig['left'] := .T.
jDefConfig['right'] := .T.
jDefConfig['style'] := FwXlsxBorderStyle():Double()

jSpecCfg := JsonObject():New()
jSpecCfg['style'] := FwXlsxBorderStyle():MediumDashDotDot()
jSpecCfg['color'] := "E1E1E1" // cinza escuro
// mantém as configurações definidas e preenche as demais com os valores padrões
jSpecCfg := FwXlsxPrinterConfig():MakeBorder(jSpecCfg)


Templatedocumentos


HTML
<style>
div.theme-default .ia-splitter #main {
    margin-left: 0px;
}
.ia-fixed-sidebar, .ia-splitter-left {
    display: none;
}
#main {
    padding-left: 10px;
    padding-right: 10px;
    overflow-x: hidden;
}

.aui-header-primary .aui-nav,  .aui-page-panel {
    margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
    margin-left: 0px !important;
}

.aui-tabs.horizontal-tabs>.tabs-menu>.menu-item.active-tab a::after { 
	background: #FF9900; !important 
}

.menu-item.active-tab { 
	border-bottom: none !important; 
}

</style>

Assuntos relacionados


Índice

Índice
indent1em
stylenone