(
path: &Path,
bytes: &[u8],
)
| 150 | } |
| 151 | |
| 152 | pub fn rasterize_svg_for_embedding( |
| 153 | path: &Path, |
| 154 | bytes: &[u8], |
| 155 | ) -> Result<Option<RasterizedSvgForEmbedding>> { |
| 156 | if !is_svg_extension(path) && !looks_like_svg(bytes) { |
| 157 | return Ok(None); |
| 158 | } |
| 159 | |
| 160 | match rasterize_svg_to_png(bytes, SVG_EMBED_MAX_SIDE) { |
| 161 | Ok(rasterized) => Ok(Some(rasterized)), |
| 162 | Err(err) => { |
| 163 | tracing::warn!( |
| 164 | "Failed to rasterize SVG for embedding (fallback to raw bytes): path={}, \ |
| 165 | error={err}", |
| 166 | path.display() |
| 167 | ); |
| 168 | Ok(None) |
| 169 | }, |
| 170 | } |
| 171 | } |
| 172 | |
| 173 | pub fn collect_markdown_files(dir: &Path, recursive: bool) -> Result<Vec<PathBuf>> { |
| 174 | let mut files = Vec::new(); |
no test coverage detected