Vse fotke v Wordu zmanjšati na enako velikost

JosipBroz

Fizikalc
10. sep 2007
1.324
0
36
Imam en velik word dokument, kjer je ogromno fotografij. Vse te fotografije bi rad dal na enako velikost. Kako to narediti z najmanj truda?
 

philips

Guru
Osebje foruma
Administrator
17. avg 2007
9.878
697
113
Imaš slike tudi v obliki fajlov? Potem jih lahko resizaš na isto velikost (in nastaviš isti DPI) in jih ponovno vstaviš v dokument. Ampak vprašanje če je to najhitrejši način
grin1.gif

Mogoče bo kak makro hitrejši, samo tu ti žal ne znam pomagati.
 

JosipBroz

Fizikalc
10. sep 2007
1.324
0
36
Fotke so že med tekstom. Nimam posameznih fajlov.
Mislil sem nekaj takega v stilu, da nastaviš dimenzije za eno fotko, potem pa z neko opcijo poveš Wordu, da to naredi za vse fotke v tem dokumentu.
Sem preveč optimističen?
 

hitcher

Pripravnik
19. jul 2007
164
2
16
Zakaj nisi napisal kateri Word imaš. Tukaj imaš macro za Word 2013, kateri meni služi že dlje časa za ta namen.
Kreiraj nov Macro, vpiši spodnje ukaze, lahko popraviš velikost s spreminjanjem parametrov:ScaleHeight in ScaleWidth to je pa tudi vse.
Macro gre čez celoten dokument, ter spremeni VSE slike.
Poročaj prosim če je šlo, sicer pa napiši za kateri Word je in ti popravim ukaze, če ti ne bi uspelo.


Dim i As Long
With ActiveDocument
For i = 1 To .InlineShapes.Count
With .InlineShapes(i)
.ScaleHeight = 50
.ScaleWidth = 50
End With
Next i
End With
 

Zanzibar

Majstr
16. sep 2007
1.068
128
63
Da se prslinim zraven....

Ker bi meni ta funkcija včasih prišla prav, sem makro stestiral v wordu 2007.
Slike se res spremenijo, vendar ne na isto dimenzijo: niti dve sliki nista imeli npr. daljše stranice enako dolge.

Ker nisem niti približno doma v macrojih, je možno, da sem kje kaj narobe naredil
smile-1.gif
 

gufy

Pripravnik
11. apr 2009
620
18
18
to pa zato ker vse slike skelira (scale) na pol velikosti. ne določi jim pa absolutno enake velikosti

moral bi narediti nekaj podobnega za resize na 300px širine:

...
Dim newWidth as Long
newWidth= 300
...
With .InlineShapes(i)
.Height = (.Width / newWidth) * .Height
.Width = newWidth
End With