| 4D v20.1BLOB PROPERTIES | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 
 | 
    4D v20.1
 BLOB PROPERTIES 
         | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| BLOB PROPERTIES ( BLOB ; comprimido {; descompTam {; tamanhoAtual}} ) | ||||||||
| Parâmetro | Tipo | Descrição | ||||||
| BLOB | BLOB |   | BLOB do qual obter informação | |||||
| comprimido | Inteiro longo |   | 0 = BLOB não está comprimido 1 = BLOB comprimido modo compacto 2 = BLOB comprimido modo rápido | |||||
| descompTam | Inteiro longo |   | Tamanho do BLOB (em bytes) quando não está comprimido | |||||
| tamanhoAtual | Inteiro longo |   | Tamanho atual do BLOB (em bytes) | |||||
O comando BLOB PROPERTIES retorna informações sobre o blob BLOB.
| Constante | Tipo | Valor | Comentário | 
| Compact compression mode | Inteiro longo | 1 | Comprimido tanto quanto possível (á custa da velocidade das operações de compressão e descompressão). Método padrão. | 
| Fast compression mode | Inteiro longo | 2 | Comprimido tão rápido quanto possível (e será descomprimido tão rápido quanto possível), à custa da taxa de compressão (o BLOB comprimido será maior). | 
| GZIP best compression mode | Inteiro longo | -1 | Compressão GZIP mais compacta | 
| GZIP fast compression mode | Inteiro longo | -2 | Compressão GZIP mais rápida | 
| Is not compressed | Inteiro longo | 0 | Sem compressão | 
Veja os exemplos para os comandos COMPRESS BLOB e EXPAND BLOB.
Depois que um BLOB foi comprimido, o método de projeto obtém a porcentagem de espaço salvo por compressão:
  ` Método de projeto Espaço economizado por compressão
  ` Espaço economizado pela compressão (Ponteiro {; Ponteiro } ) -> Inteiro Longo
  ` Espaço economizado pela compressão ( -> BLOB {; -> bytesEconomizados } ) -> Porcentagem
 
 C_POINTER($1;$2)
 C_LONGINT($0;$vlComprimido;$vlDescompTam;$vlTamanhoAtual)
 
 BLOB PROPERTIES($1->;$vlComprimido;$vlDescompTam;$vlTamanhoAtual)
 If($vlDescompTam=0)
    $0:=0
    If(Count parameters>=2)
       $2->:=0
    End if
 Else
    $0:=100-(($vlTamanhoAtual/$vlDescompTam)*100)
    If(Count parameters>=2)
       $2->:=$vlDescompTam-$vlTamanhoAtual
    End if
 End ifDepois que este método tenha sido adicionado à sua aplicação, você pode usá-lo desta maneira:
  ` ...
 COMPRESS BLOB(vxBlob)
 $vlPorcentaje:=Espaço economizado pela compressão(->vxBlob;->vlTamanhoBlob)
 ALERT("A compressão economizou "+String(vlBlobSize)+" bytes, "+String($vlPorcentagem;"#0%")+
 " de espaço.")
	Produto: 4D
	Tema: BLOB
	Número 
        536
        
        
        
	
	Criado por: 4D v6
	Modificado: 4D v13
blob compression, Compression
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	Manual de linguagem 4D ( 4D v20)
	
	
	Manual de linguagem 4D ( 4D v20.1)
	
	
	
 Adicionar um comentário
Adicionar um comentário