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 poderá 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 com os valores padrõ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:
Nome | Tipo | Obrigatório | Default | Referência | Descrição |
font | caractere | x | FwPrinterFont():Calibri() | x | código da fonte para uso |
size | numérico | x | 11 | x | tamanho da fonte para uso |
italic | lógico | x | .F. | x | deve aplicar itálico? |
bold | lógico | x | .F. | x | deve aplicar negrito? |
underline | lógico | x | .F. | x | deve aplicar sublinhado? |
Bloco de código |
---|
|
// recupera todas as propriedades com valor padrão para alterar depois
jDefConfig := FwXlsxPrinterConfig():MakeFont()
jDefConfig['font'] := FwPrinterFont():ArialBlack()
jDefConfig['size'] := 13
jSpecCfg := JsonObject():New()
jSpecCfg['size'] := 15
jSpecCfg['bold'] := .T.
jSpecCfg['font'] := FwPrinterFont():TimesNewRoman()
// mantém as configurações definidas e preenche as demais com os valores padrões
jSpecCfg := FwXlsxPrinterConfig():MakeFont(jSpecCfg) |
Constrói um objeto para a configuração de formatação da célula 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:
Nome | Tipo | Obrigatório | Default | Referência | Descrição |
hor_align | caractere | x | FwXlsxHorizontalAlignment():Default() | x | indica o alinhamento horizontal do conteúdo na célula |
vert_align | caractere | x | FwXlsxVerticalAlignment():Default() | x | indica o alinhamento vertical do conteúdo na célula |
text_wrap | lógico | x | .F. | x |
indica se deve aplicar textolinha no conteúdo? |
degrees | numérico | x | 0 | x | indica a rotação do texto em graus 0 - 359 |
text_color | caractere | x | FFFFFF // preto | x | cor para o texto |
background_color | caractere | x | 000000 // branco | x | cor de fundo da célula |
custom_format | caractere | x | "" | x | formatação personalizada para o conteúdo |
Bloco de código |
---|
|
// apoio para o tipo de alinhamento
oHorizontal := FwXlsxCellAlignment():Horizontal()
oVertical := FwXlsxCellAlignment():Vertical()
// recupera todas as propriedades com valor padrão para alterar depois
jDefConfig := FwXlsxPrinterConfig():MakeFormat()
jDefConfig['hor_align'] := oHorizontal:Center()
jDefConfig['vert_align'] := oVertical:Center()
jSpecCfg := JsonObject():New()
jSpecCfg['text_color'] := "121212" // cinza claro
jSpecCfg['background_color'] := "00FF00" // verde
jSpecCfg['custom_format'] := "mmm-aaaa"
jSpecCfg['vert_align'] := oVertical:Bottom()
// mantém as configurações definidas e preenche as demais com os valores padrões
jSpecCfg := FwXlsxPrinterConfig():MakeFormat(jSpecCfg) |
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:
Nome | Tipo | Obrigatório | Default | Referência | Descrição |
left | lógico | x | .F. | x | deve usar borda à esquerda? |
top | lógico | x | .F. | x | deve usar borda acima? |
right | lógico | x | .F. | x | deve usar borda à direita? |
bottom | lógico | x | .F. | x | deve usar borda abaixo? |
style | caractere | x | FwXlsxBorderStyle():None() | x | define o estilo de borda |
usar, veja FwXlsxBorderStyle() para informações dos estilos disponíveis |
color | caractere | x | FFFFFF // branco | x | define a cor para aplicar em todas as bordas |
Bloco de código |
---|
|
// 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) |
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>
|